代码如下:如有帮助,请采纳一下,谢谢。
#include <stdio.h>
#include <string.h>
typedef struct candidate
{
char name[20];
int count;
}CANDIDATE;
int Election(CANDIDATE can[],int n,int elector)
{
int i,j;
int feipiao = 0;
char name[20] = {0};
//初始化投票人数,避免出现未初始化的情况
for (i = 0;i < n; i++)
{
can[i].count = 0;
}
//投票
for (i = 0;i < elector; i++)
{
printf("请投票人%d投票:",i+1);
scanf("%s",name);
for (j = 0; j < n;j++)
{
if(strcmp(can[j].name,name)==0)
{
can[j].count += 1;
break;
}
}
if(j == n)
feipiao +=1;
}
return feipiao;
}
int main()
{
int fp = 0;
int i = 0;
CANDIDATE can[3];
strcpy(can[0].name , "li");
strcpy(can[1].name , "zhang");
strcpy(can[2].name , "wang");
fp = Election(can,3,10);
printf("废票数:%d\n",fp);
for (;i<3;i++)
{
printf("%s\t%d\n",can[i].name,can[i].count);
}
return 0;
}