给A,B,C,D,E五位同学投票,设计一个一维数组保存他们所得票数。请用C语言编写一个用键盘输入投票的方式的投票程序。
时间: 2024-05-12 16:16:46 浏览: 13
好的,我明白了。下面是回答:
可以使用以下 C 语言代码编写投票程序:
```c
#include <stdio.h>
int main() {
int votes[5] = {0}; // 初始化票数数组为0
char candidates[5] = {'A', 'B', 'C', 'D', 'E'}; // 候选人名称
int voter_count = 0; // 投票人数
printf("请开始投票,每个数字代表该候选人的编号:\n");
printf("1. A\n2. B\n3. C\n4. D\n5. E\n");
printf("请输入投票人数:");
scanf("%d", &voter_count);
// 循环读取每个选民的投票
for (int i = 0; i < voter_count; i++) {
int vote = 0;
printf("请输入第%d位选民的投票编号:", i+1);
scanf("%d", &vote);
// 检查投票是否合法
if (vote >= 1 && vote <= 5) {
// 将该候选人的票数加一
votes[vote-1]++;
} else {
printf("投票无效,请重新输入。\n");
i--; // 投票无效,需重新输入
}
}
// 输出候选人票数
printf("投票结果:\n");
for (int i = 0; i < 5; i++) {
printf("%c : %d 票\n", candidates[i], votes[i]);
}
return 0;
}
```
程序中,先定义了一个整型数组 votes 存放每位候选人所得票数。初始为 0。再定义一个字符型数组 candidates 存放每位候选人的名称。之后,程序提示用户输入投票人数 voter_count。使用 for 循环来读取每个选民的投票,使用 if 判断输入的投票是否合法。如果有效,则将该候选人的票数加一。
最后,程序输出各候选人的得票数。