C语言:编写一个模拟投票系统,有20个人要对3个人(1、2、3号)进行投票,要求统计每个人的得票数和弃权票数,并将结果输出
时间: 2024-02-13 19:03:21 浏览: 34
好的,我可以帮你编写一个模拟投票系统的C语言程序。
以下是程序代码:
```
#include <stdio.h>
int main() {
int vote[3] = {0}; // 三个候选人的得票数
int abstention = 0; // 弃权票数
int i, v;
for (i = 0; i < 20; i++) {
printf("第%d位选民,请输入你的投票结果(1, 2, 3代表候选人,0代表弃权):", i + 1);
scanf("%d", &v);
if (v < 0 || v > 3) {
printf("无效的投票结果!\n");
i--;
continue;
}
if (v == 0) {
abstention++;
} else {
vote[v - 1]++;
}
}
printf("投票结果如下:\n");
for (i = 0; i < 3; i++) {
printf("候选人%d得票数:%d\n", i + 1, vote[i]);
}
printf("弃权票数:%d\n", abstention);
return 0;
}
```
该程序使用一个整型数组 vote 来记录三个候选人的得票数,使用整数变量 abstention 来记录弃权票数。程序通过 for 循环,依次询问20位选民的投票结果,并根据投票结果更新 vote 和 abstention 的值。最后,程序输出各个候选人和弃权票的得票数。
请注意,该程序并没有进行输入的有效性判断,所以可能会出现无效的投票结果。