统计候选人票数结构体指针
时间: 2024-06-19 19:03:28 浏览: 161
用结构体求 投票
统计候选人票数结构体指针可以用于统计候选人的得票情况。该指针指向一个包含候选人姓名和票数的结构体,可以通过该指针修改结构体中的票数信息。
以下是一个示例代码:
```
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
// 声明候选人票数结构体
struct candidate {
char name[20];
int votes;
};
// 统计候选人票数函数
void count_votes(struct candidate* c, int n) {
char input[20];
printf("请输入候选人姓名(输入end表示结束):\n");
while (scanf("%s", input) && strcmp(input, "end") != 0) {
int found = 0;
for (int i = 0; i < n; i++) {
if (strcmp(c[i].name, input) == 0) {
c[i].votes++;
found = 1;
break;
}
}
if (!found) {
printf("无效的候选人姓名,请重新输入!\n");
}
printf("请输入候选人姓名(输入end表示结束):\n");
}
}
// 输出候选人得票情况函数
void print_result(struct candidate* c, int n) {
printf("候选人得票情况如下:\n");
for (int i = 0; i < n; i++) {
printf("%s: %d\n", c[i].name, c[i].votes);
}
}
int main() {
// 初始化候选人票数结构体数组
struct candidate candidates[] = {
{"张三", 0},
{"李四", 0},
{"王五", 0},
{"赵六", 0}
};
int n = sizeof(candidates) / sizeof(struct candidate);
// 统计候选人票数
count_votes(candidates, n);
// 输出候选人得票情况
print_result(candidates, n);
return 0;
}
```
在上述代码中,我们定义了一个候选人票数的结构体,并声明了一个指向该结构体的指针。通过输入候选人姓名,然后遍历结构体数组,找到对应的候选人并增加其票数。最后,输出所有候选人的得票情况。
阅读全文