用c语言某单位进行选举,有5位候选人:李宁、王新、赵广、陈奇、六六。编写一个统计每人得票数的程序。要求每一个人的信息使用一个结构体表示,5个人的信息使用结构体数组。
时间: 2024-03-18 16:42:13 浏览: 59
EasyTrade:一个简单的基于位置的Android交易应用程序
好的,我可以帮你编写这个程序。以下是代码:
```c
#include <stdio.h>
#include <string.h>
#define MAX_NAME_LEN 10
#define NUM_CANDIDATES 5
struct candidate {
char name[MAX_NAME_LEN];
int votes;
};
int main() {
struct candidate candidates[NUM_CANDIDATES];
int i, j;
// 初始化候选人信息
strcpy(candidates[0].name, "李宁");
candidates[0].votes = 0;
strcpy(candidates[1].name, "王新");
candidates[1].votes = 0;
strcpy(candidates[2].name, "赵广");
candidates[2].votes = 0;
strcpy(candidates[3].name, "陈奇");
candidates[3].votes = 0;
strcpy(candidates[4].name, "六六");
candidates[4].votes = 0;
// 输入每个选民的投票
int num_voters;
printf("请输入投票人数:");
scanf("%d", &num_voters);
for (i = 0; i < num_voters; i++) {
printf("请输入第%d位选民的选择(1-5):", i+1);
int choice;
scanf("%d", &choice);
candidates[choice-1].votes++;
}
// 输出每个候选人的得票数
printf("最终得票结果:\n");
for (i = 0; i < NUM_CANDIDATES; i++) {
printf("%s: %d\n", candidates[i].name, candidates[i].votes);
}
return 0;
}
```
程序的运行流程如下:
1. 定义一个结构体 `candidate`,其中包括候选人姓名和得票数两个成员变量。
2. 定义一个 `candidates` 数组,包括5个候选人的信息。
3. 初始化 `candidates` 数组中每个候选人的信息。
4. 输入每一个选民的投票,根据投票结果更新对应候选人的得票数。
5. 输出每个候选人的得票数。
注意,这个程序的输入和输出都是在控制台中进行。如果需要从文件中读取选民的投票结果,或者将结果输出到文件中,需要使用文件操作函数。
阅读全文