|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- #include<stdio.h>
- #include<string.h>
- #include<stdlib.h>
- #define M 4
- struct person
- {
- char name[20];
- int count;
- } condidata[M] =
- {
- { "李白", 0 },
- { "杜甫", 0 },
- { "杜牧", 0 },
- { "老王", 0 }
- }; //可加“;struct condidate condidata_name[10];”定义,两种定义方法。
- char *winner();
- void main()
- {
- int i;
- char condidata_name[20];
- printf("诗人:李白,杜甫,杜牧,老王\n");
- printf("选出一个你最喜欢的诗人\n");
- for (i = 0; i < 6; i++)
- {
- printf("第%2d个投票给了:", i + 1);
- scanf_s("%s", condidata_name, 20);
- for (int j = 0; j < M; j++) //输入的和候选的一样的话计数+1
- {
- if (0 == strcmp(condidata_name, condidata[j].name))
- {
- condidata[j].count++; //这里自己试过输出对应人的票数,虽有计数,但是没分开计数(就像李白杜甫各一票的时候显示是1100)
- }
- }
- printf("\n");
- }
- printf("\n");//后面的就不执行了。。。。。。。。。。。。。。。
- for (i = 0; i < 4; i++)
- {
- printf("%s一共获得%d票\n", condidata[i].name, condidata[i].count); //输出个人所得票数
- }
- printf("\n");
- printf("最后票数最多的是:%s", winner());//输出票数最多的人
- printf("\n");
- printf("pause");
- }
- char *winner() //输出票数最多的人的名字
- {
- int i=0,winner=i;
- for (i = 1; i < M; i++)
- {
- if (condidata[winner].count < condidata[i].count)
- {
- winner = i;
- }
- }
- return condidata[winner].name;
- }
复制代码 |
|