c语言大作业投票,C语言 结构体练习之投票

#include#define VOTES 25//总票数/人

#define CANDIDATES 5//候选人

//模拟投票函数原型

void vote();

typedef struct{

char name[10];

int age;

char gender;

int votes;

}CANDIDATE;

CANDIDATE cdd[CANDIDATES]={{"Zhang",18,'m',0},{"Wang",19,'m',0},{"Zhao",19,'f',0},{"Li",17,'m',0},{"Qian",18,'f',0}},*p_cdd = cdd;

void main(){

//投票开始

vote();

//打印测试

for(;p_cdd < cdd + CANDIDATES;p_cdd++){

printf("name : %s\nage : %d\ngender : %c\nvotes : %d\n",p_cdd->name,p_cdd->age,p_cdd->gender,p_cdd->votes);

printf("----------------------------------------------\n");

}

//

p_cdd = &cdd[0];

int temp = 0;

int votes_max = p_cdd->votes;

//找出最高得票

for(int i = 1; i < CANDIDATES;i++){

if(votes_max < (p_cdd+i)->votes ){

votes_max = (p_cdd+i)->votes;

temp = i;

}

}

//打印最高得票者

printf("最高得票者如下:\n");

for(;p_cdd < cdd + CANDIDATES;p_cdd++){

if(p_cdd->votes == votes_max)

printf("%s\n",p_cdd->name);

}

}

//模拟投票函数实现

void vote(){

//调用库函数random模拟投票

//设置随机数种子

srand(time(0));

for(int i = 1;i <= VOTES;i++){

(p_cdd+rand()%CANDIDATES)->votes++;

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值