本篇文章是在学习c语言结构体过程中得一个简单的投票系统程序。很简单应用了strcmp函数进行了比较。很简单但花了一上午才调通,看来我这编程还有点加强啊。不过也对自己是一个提升继续加油。话不多说直接上代码。代码有注释就不一一解释了。在Microsoft Visual C++上运行的程序,不太懂在结束while循环中需要两侧ctrl+z再加上Enter键
1 #include<stdio.h> 2 #include<string.h> 3 #include<stdlib.h> 4 5 struct vote 6 { 7 int num; //投票数 8 char *name; //城市名称 9 }people1,people2,people3; 10 11 void main() 12 { 13 people1.num=0; 14 people2.num=0; 15 people3.num=0; 16 people1.name="北京"; 17 people2.name="西安"; 18 people3.name="郑州"; 19 printf("请为以下城市中您喜欢的城市进行投票:1、北京;2、西安;3、郑州,4、其他\n"); 20 int num=0; //记录其他城市的投票数 21 char *name; 22 name=(char*)malloc(sizeof(char)); //功能是开辟新的地址,要是没有这一行,下面while循环就只能输入一次,原因应该是没有开辟新的地址,无法再输入吧 23 24 25 while(scanf("%s",name)!=EOF) 26 { 27 if(strcmp(name,people1.name)==0) //简单的字符串比较 28 { 29 people1.num++; 30 } 31 else if(strcmp(name,people2.name)==0) 32 { 33 people2.num++; 34 } 35 else if(strcmp(name,people3.name)==0) 36 { 37 people3.num++; 38 } 39 else 40 { 41 num++; 42 } 43 } 44 45 printf("%s得票数为%d\n%s得票数为%d\n%s得票数为%d\n其他得票数为%d\n",people1.name,people1.num,people2.name,people2.num,people3.name,people3.num,num); 46 47 }
标签:投票系统,name,体之,num,-----,people1,people2,people3,得票数 From: https://www.cnblogs.com/sbb-first-blog/p/16793940.html