【C】统计选票程序解析-书上例题

 

#include <stdio.h>          //一般都有的头文件

 

struct candidate           //建立一个结构体,后面是名称
{
char name[20];           //定义变量name,设置长度20
int count;              //定义变量count
} list[]={{"invalid",0},{"Zhang",0},{"Wang",0},{"Li",0},{"Zhao",0},{"Liu",0}};        //重要!!直接在结构体后面加的话,会让里面的数据与结构体里面的定义变量对应在一起!
                                        //就是说Zhang与name对应,0与count对应。还有list是数组,数组里面有很多数据,而且数据格式一样。
int main()              //主函数定义
{
int i,n;                //定义变量i与n
printf("Enter vote\n");          //输出enter vote,意思就是进入投票环节
scanf("%d",&n);            //输入一个数字,截获一个数字
while (n!=-1)              //n只要不等于-1,就不会停止循环
{
if(n>=1&&n<=5)            //如果n大于等于1又小于等于5,就是说n在1到5,就会
list[n].count++;             //就会让list数组第n组的count数据加1
else                  //不然
{
printf("invalid\n");            //输出无效,
list[0].count++;             //然后让list数组的第0组的count数据加1
}
scanf("%d",&n);             //输入一个数字后截获一个数字
}
for(i=1;i<=5;i++)              //循环判定环节,先来1,如果i小于等于5,就先循环一下循环,之后再加1,直到i变成6再也不符合循环判定条件,就是说从1到5,循环5次
printf("%s:%d\n",list[i].name,list[i].count);    //%s是一个字符串,%d是数据,%s和%d每一个对应后面的list[i].name,list[i].count,
printf("%s:%d\n",list[0].name,list[0].count);    //这个也是一样,

}

转载于:https://www.cnblogs.com/naraka/p/jiegouti_1.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值