清华大学谭浩强教授的C++教程
源代码在线查看: 例7.2.txt
例7.2 对候选人得票的统计程序。设有3个候选人,最终只能有1人当选为领导。今有10个人参加投票,从键盘先后输入这10个人所投的候选人的名字,要求最后输出这3个候选人的得票结果。
可以定义一个候选人结构体数组,包括3个元素,在每个元素中存放有关的数据。
程序如下:
#include
struct Person //声明结构体类型Person
{ char name[20];
int count;
};
int main( )
{ Person leader[3]={″Li″,0,″Zhang″,0,″Fun″,0};
//定义Person类型的数组,内容为3个候选人的姓名和当前的得票数
int i,j;
char leader_name[20]; //leader_name为投票人所选的人的姓名
for(i=0;i {cin>>leader_name; //先后输入10张票上所写的姓名
for(j=0;j if(strcmp(leader_name,leader[j].name)==0) leader[j].count++;
//如果与某一候选人的姓名相同,就给他加一票
}
cout for(i=0;i {cout return 0;
}