C语言课程设计投票程序设计.doc
《C语言课程设计投票程序设计.doc》由会员分享,可在线阅读,更多相关《C语言课程设计投票程序设计.doc(9页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、投票程序1. 题目与要求:题目要求设有代号为a,b,c的三个个足球先生候选人,根据投票者在选票上对他们编号的填写顺序分别记分5,3,2。请编程从键盘上输入投票人数及投票结果,统计他们的得分,并输出哪位中选足球先生。请注意;假设同一张票上写有两个一样代号,那么显示“此票无效,假设最终前两名得分一样应显示“重新投票,否那么显示三个候选者得分并输出“祝贺X中选冠军!。例如:投票人数:5输入投票内容:a b cc a bc b ac a a 该票无效!c b a 三位候选人得分:a: 12b: 13c: 15祝贺c中选冠军!1.1问题提出与要求:需求分析本程序中要求候选人有编号与得票数,且每张选票上要
2、同时写上三个候选人的编号,最终输出谁是获胜者。因此可以用构造体来存储候选人的信息。唱票中要求相对应的编号分别记分为5、3、2,因此在记分程序中可以用一个条件表达式来进展统计得分。统计结果中假设前两名有一样的得票数那么要求重新投票。为此要求把三个侯选人的总得分进展比拟,那么可以用一个判断语句来判断,简单明了。数据构造可用构造体数组,构造体成员包括代号、得分。或者采用二维数组,行方向对应一张投票,列方向对应各候选人得分。2.功能实现设计:程序流程图流程图:开场输入投票人数及投票内容统计相应候选人的票数并排序选票编号重复?判断前两名总票数是否相等完毕重新投票NYYN输出投票结果及获胜者定义构造体与相
3、关变量该票无效2.2详细设计: 程序源代码:#include main() int finish=0,first,seccond,i,scores3,num; char s1,s2,s3; printf(*n); printf(*Welcome to use footballman voting programe! *n); printf(*n); while(finish=0) /*输入模块*/ for(i=0;i3;i+) scoresi=0; printf(请输入投票人数: n); /*有多少人投票*/ scanf(%d,&num); /*输入投票人数*/ getchar(); prin
4、tf(请输入投票内容选择您所需的abc候选人次序: n); /*选票的内容*/ for(i=0;i=a & s1=a & s2=a & s3=c)/*统计模块*/ scoress1-a+=5; scoress2-a+=3; scoress3-a+=2; printf(Voting results:n); /*输出模块*/ printf(a: %dn,scores0); /*结果输出*/ printf(b: %dn,scores1); printf(c: %dn,scores2); first=0; seccond=1; for(i=0;iscoresfirst) seccond=first;
5、first=i; else if(scoresiscoresseccond) seccond=i; if(scoresfirst!=scoresseccond) printf(祝贺 %c 中选冠军!n,first+a); finish=1; else printf(请重新投票!n); return 0;启动程序:编译、链接、运行:输入投票人数:5输入投票内容:a b cc a bc a a 该票无效!c b ac b a 成功运行!知识点集锦:什么是构造化程序设计?比拟其与对象化程序设计的区别。答:构造化程序的概念首先是从以往编程过程中无限制地使用转移语句而提出的。转移语句可以使程序的控制流程
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 课程设计 投票 程序设计
限制150内