//这个题目已经解了 谢谢大家帮助
#include<stdio.h>
#include<string.h>
struct material //申明一个结构体 装 姓名 ,和得票数
{
char name[10];
int ticket;
}a[4]={"qq",0,"ww",0,"ee",0,"rr",0,};
void main()
{
struct material temp;
char t[10];
int i=0,j;
do //循环接收输入的名字是和那个名字相符合,那个名字的票数就加1
{
printf("输入后选人姓名:");
scanf("%s",t);
for(i=0;i<4;i++)
{
if(strcmp(t,a[i].name)==0)
a[i].ticket++;
}
}
while(strcmp(t,"0")); //循环到输入"0"结束选票
for(i=0;i<4;i++) //输出选票人 和票数
printf("后选人姓名:%s\n后选人票数%d",a[i].name,a[i].ticket);
for(i=0;i<3;i++)
{
for(j=i+1;j<4;j++)
{
if (a[i].ticket<a[j].ticket)
{
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
}
printf("当选人姓名为:%s\n以%d票当选",a[0].name,a[0].ticket);
}
[此贴子已经被作者于2006-3-21 22:11:58编辑过]