用C语言编写,设有3个候选人,每次输入一个得票的后选人的名字,要求最后输出每个人得票的结果。
时间: 2024-03-16 10:41:28 浏览: 25
可以使用C语言中的结构体来实现候选人信息的存储和统计。下面是一个简单的示例代码:
```c
#include <stdio.h>
#include <string.h>
#define MAX_NAME_LENGTH 20
#define MAX_CANDIDATES 3
// 候选人信息结构体
struct candidate {
char name[MAX_NAME_LENGTH];
int votes;
};
// 初始化候选人信息数组
struct candidate candidates[MAX_CANDIDATES] = {
{"Candidate 1", 0},
{"Candidate 2", 0},
{"Candidate 3", 0}
};
int main() {
char name[MAX_NAME_LENGTH];
int i;
// 循环输入候选人名字,直到输入为空字符串
while (1) {
printf("Enter candidate name (or enter blank to end): ");
fgets(name, MAX_NAME_LENGTH, stdin);
name[strcspn(name, "\n")] = '\0'; // 去除输入字符串的换行符
if (strlen(name) == 0) {
break;
}
// 找到输入的候选人信息,并将其得票数加一
for (i = 0; i < MAX_CANDIDATES; i++) {
if (strcmp(name, candidates[i].name) == 0) {
candidates[i].votes++;
break;
}
}
// 如果输入的名字不是候选人之一,则提示输入错误
if (i == MAX_CANDIDATES) {
printf("Invalid candidate name!\n");
}
}
// 输出每个候选人的得票数
for (i = 0; i < MAX_CANDIDATES; i++) {
printf("%s: %d votes\n", candidates[i].name, candidates[i].votes);
}
return 0;
}
```
运行结果如下:
```
Enter candidate name (or enter blank to end): Candidate 1
Enter candidate name (or enter blank to end): Candidate 2
Enter candidate name (or enter blank to end): Candidate 1
Enter candidate name (or enter blank to end): Candidate 3
Enter candidate name (or enter blank to end): Candidate 2
Enter candidate name (or enter blank to end):
Candidate 1: 2 votes
Candidate 2: 2 votes
Candidate 3: 1 votes
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)