【发布时间】:2022-06-28 12:41:48
【问题描述】:
在多个prblm中,我设法更新了每个候选人的投票,我的代码可以打印一个获胜者,但如果他们有很多获胜者,仍然会卡住。 通过提示或线索提供帮助,而不是整个解决方案。 提前致谢。
void print_winner(void)
{
int v = 0; //maximum number of votes
string w; //winner of the election
for (int i = 0; i < candidate_count; i++)
{
if (v <= candidates[i].votes)
{
v = candidates[i].votes;
}
}
for (int j = 0; j < candidate_count; j++)
{
if (candidates[j].votes == v)
{
w = candidates[j].name;
}
}
printf("%s\n", w);
return;
}
【问题讨论】:
-
"prblm"?你的意思是问题?
-
printf在任何循环之外,所以它只执行一次。而不是分配给w,当然,它只能保存一个值,而是在那里打印名称。 -
票数相同时,没有赢家,只有连任。
-
这就是我要找的,如果有很多获奖者如何打印。
-
将
printf移动到w =行之后?