一.解体思路
- 设一个结构体数组,数组中包含3个元素; 每个元素中的信息应包括候选人的姓名和得票数;
- 输入被选人的姓名,然后与数组元素中的“姓名”成员比较,如果相同,就给这个元素中的“得票数”成 员的值加1;
- 输出所有元素的信息。
二.代码实现
#define _CRT_SECURE_NO_WARNINGS//这一句必须放在第一行
#include <stdio.h>
#include<string.h>
struct Person //定义候选人
{
	char name[20];//姓名
	int count; //票数
};
void Ticket(struct Person* p, int len)//计票程序
{
	char name[20]; //保存投票的数据
	for (int i = 0; i < 5; i++)//模拟5个选民
	{
		scanf("%s", name); //读取选票
		for (int j = 0; j < len; j++)//和候选人比较
		{
			if (strcmp(name, p[j].name) == 0)
			{
				p[j].count++;//选票加1
				break;//匹配成功,不需要再和后面的候选人匹配
			}
		}
	}
}
void Show(const struct Person* p, int len)//输出程序
{
	for (int i = 0; i < len; i++)
	{
		printf("姓名:%s,票数:%d\n", (p + i)->name, (p + i)->count);
	}
}
int main()
{
	struct Person leader[3] = { "曹操",0,"刘备",0,"孙权",0 };
	Ticket(leader, sizeof(leader) / sizeof(leader[0]));
	Show(leader, sizeof(leader) / sizeof(leader[0]));
    return 0;
}三.运行结果

 创作不易, 如果这份博客👍对你有帮助,可以给博主一个免费的点赞以示鼓励。
 欢迎各位帅哥美女点赞👍评论⭐收藏⭐,谢谢!!!
 如果有什么疑问或不同的见解,欢迎在评论区留言哦👀。
 祝各位生活愉快⭐












![[西湖论剑 2022]real_ez_node](https://img-blog.csdnimg.cn/f2f2440106c046e59fe55dfce7e937ac.png)







