初识C语言~~查找票数最高候选人

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

提示:这里可以添加本文要记录的大概内容:
大家好又见面喽!!今天是刷题,二话不说开干。在这里插入图片描述

提示:以下是本篇文章正文内容,下面案例可供参考

一、题目描述

统计侯选人的得票数以及查找票数最高候选人。
(设有五个候选人Zhao、Qian、Sun、Li、Zhou。)

二、解题思路

*1、使用结构体来表示候选人的姓名以及票数,并且在其中设立一个无效票为list[0]。五个候选人分别为为list[1]~list[5]。

2、主函数使用三个循环语句以便更容易查找票数最高候选人。

三、编写代码

#include "stdio.h" 
struct candidate 
{char name[20];
 int count;
 }list[]={{"invalid",O},{"Zhao",0},{"Qian",0},{"Sun",0},{"Li",0},{"Zhou",0}};
int main()
{
  int i,n;
  struct candidate win;
  printf("Enter vote\n"); 
  scanf("%d",&n);
  while (n!=-1)
  {
      if (n>=1&&n<=5)
          list[n].count++;
    else {
    printf("invalid\n"); 
     list[O].count++;}
     scanf("%d",&n);
     }
     for(i=1;i<=5;i++)
       printf("%s:%d ",list[i].name,list[i].count);
       printf("%s:%d\n",list[0].name,list[0].count);
       win=list[1];
       for(i=2;i<=5;i++)
       {if(list[i].count>win.count)
       win=list[i];}
       printf("%s is the winner\n",win.name);
 }

总结

提示:这里对文章进行总结:
好了,今天的分享到这里就结束了,希望大家多多支持。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值