编写一个模拟投票系统。班上有三位候选人竞选班干部,请班里所有其他50名同学投票选举。3个候选人的编号分别为1、2、3,每位同学以数字的形式投候选人对应的编号1、2、3,其他的数据作为废票或无效票。每人限投一次,只能投一个候选人。求每个候选人的得票数和无效票数。请用C语言编写
时间: 2024-03-10 18:49:52 浏览: 180
好的,以下是用C语言编写的模拟投票系统的代码:
```c
#include <stdio.h>
int main() {
int candidate1 = 0, candidate2 = 0, candidate3 = 0, invalid_votes = 0;
int vote;
for (int i = 1; i <= 50; i++) {
printf("请输入第 %d 位同学的投票编号(1、2、3):", i);
scanf("%d", &vote);
if (vote == 1) {
candidate1++;
} else if (vote == 2) {
candidate2++;
} else if (vote == 3) {
candidate3++;
} else {
invalid_votes++;
}
}
printf("候选人1获得票数:%d,无效票数:%d\n", candidate1, invalid_votes);
printf("候选人2获得票数:%d,无效票数:%d\n", candidate2, invalid_votes);
printf("候选人3获得票数:%d,无效票数:%d\n", candidate3, invalid_votes);
return 0;
}
```
在这段代码中,我们定义了四个变量:candidate1、candidate2、candidate3和invalid_votes,它们分别用来存储三个候选人的得票数和无效票的数量。然后,利用for循环让每一个同学依次进行投票,使用scanf函数从控制台输入每一个同学的投票编号,并根据投票编号对应增加相应候选人的得票数,对于非数字的数据则视为无效票。最后,使用printf函数输出每个候选人的得票数和无效票数。
希望这个代码可以帮助您完成您的任务!
阅读全文