C语言 投票系统:给定候选人,从键盘输入候选人…

2018-06-18 03:51:03来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

投票系统:给定候选人名单,从键盘输入候选人的名字,统计票数,并输出最终获胜者。若投票人输入的名字不在其候选名单上,则该票数无效。

//凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/

 1 #include<stdio.h>
 2 #include<string.h>
 3 #define NUM 10  //投票的人数
 4 #define K 4  //候选人数
 5 struct vote{
 6     char name[10];
 7     int num;
 8 }candidate[K]={"Mark", 0, "wrr", 0, "Mary", 0, "Kay", 0};
 9 
10 void main(){
11     char input[10];
12     int i, j, m=0, n=0, max=0;
13 
14     printf("\t\tWelcome to the voting system!\n");
15     printf("\t\tcandidate:");
16     for(j=0;j<K;j++){
17         printf("%s ", candidate[j].name);
18     }
19     printf("\n");
20 
21     for(i=0;i<NUM;i++){
22         printf("No.%d is voting ,name is :", i+1);
23         scanf("%s",input);
24         for(j=0;j<K;j++){
25             if(strcmp(candidate[j].name, input)==0){
26                 n=candidate[j].num++;
27             }
28             if(max<n){
29                 max=n;
30                 m=j;
31             }
32         }
33     }
34     printf("\n\n");
35 //int strcmp(char *a, char *b)  比较字符串a, b    
36 //a<b, 返回负数; a=b,返回 0 ; a>b,返回正数
37     for(j=0;j<K;j++){
38         printf("%s's number of votes is %d\n", candidate[j].name, candidate[j].num);
39     }
40 
41     printf("\nThe victor is %s !!! \nThe number of votes is %d\n\n", candidate[m].name, max+1);
42 }

结果为:

 

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:传递指针参数(函数内部给指针赋值)示例

下一篇:C语言 一个数学问题:求s=(a^m)!+(b^n)!