c语言课程设计--c语言投票程序

c语言课程设计--c语言投票程序

ID:24904243

大小:152.50 KB

页数:18页

时间:2018-11-16

c语言课程设计--c语言投票程序_第1页
c语言课程设计--c语言投票程序_第2页
c语言课程设计--c语言投票程序_第3页
c语言课程设计--c语言投票程序_第4页
c语言课程设计--c语言投票程序_第5页
资源描述:

《c语言课程设计--c语言投票程序》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、C程序设计实习报告题目:C语言投票程序学院:专业:姓名:班级学号指导教师:2010年07月17日目录一、课程设计题目描述与要求……………………………………3二、需求与个人设计思想……………………………………4三、流程图……………………………………5四、我的程序设计(源程序)……………………………………6程序运行情况……………………………………8五、总结与修改……………………………………9关于程序实行……………………………………9问题及可能的解决方法……………………………………9修改后程序运行情况……………………………………12修改后的程序优点………

2、……………………………13心得与体会……………………………………15C语言投票程序一、课程设计题目描述与要求要求:设有代号为a、b、c的足球先生候选人,根据投票者在选票上对他们编号的填写顺序分别记分5、3、2。请编程从键盘上输入投票人数及投票结果,统计他们的得分,并输出哪位当选足球先生。注意:若同一张票上写有两个相同的代号,则显示“此票无效”,若最终前两名得分相同应显示“重新投票”,否则先是三个候选者得分并输出“祝贺X当选冠军!”。例如:投票人数:5输入投票内容:abccabcaa该票无效!cbabca三位候选人得分:a:12b:13c:15祝贺c

3、当选冠军!提示:数据结构可用结构体数组,结构体成员包括代号、得分。或者采用二维数组,行方向对应一张投票,列方向二、需求与个人设计思想【需求】此程序意在评出得分最高的“足球先生”,要求编程从键盘上输入投票人数及投票结果,统计他们的得分,并输出哪位当选足球先生。【个人设计思想】通过结构体数组structcandidateCadt[3]来存储三位候选人的基本信息:代号、得分。在用一个一维数组来存储投票内容——代表投票内容(顺序),通过循环语句while,for和一个没有参数的getchar函数(字符输入函数)从终端输入投票内容,处理后得到最终三位候选人得

4、分,比较得到最终结果,评出得分最高的一名候选人,即为“足球先生”。在过程中,当遇到一张选票上写有两个代号相同时应显示“此票无效”,若最终前两名得分相同应显示“重新投票”,否则先是三个候选者得分并输出“祝贺X当选冠军!”。三、流程图1、整体流程图“足球先生”投票程序名次排序输出数据比较数据处理投票内容输入结构体数组引用图7—12、主函数流程图:请问共有多少人进行投票输入投票人数开始同一张票上存在相同代号统计票数显示“此票无效”存在相同票数?输出“祝贺X当选冠军”输入投票人数图7—2四、我的程序设计(源程序)#includestruc

5、tcandidate//定义结构体{charname;//名字intscore;//分数};structcandidateCadt[3]={{'a',0},{'b',0},{'c',0}};voidmain(){inti,j,num;charvote[3],s;printf("请问共有多少人投票?");scanf("%d",&num);while(num--){for(i=0;i<3;i++){s=getchar();while(s!='a'&&s!='b'&&s!='c')s=getchar();vote[i]=s;}if(vote[0]+v

6、ote[1]+vote[2]!='a'+'b'+'c')//判断选票上是否有重复代码{printf("该票无效!");continue;}elsefor(j=0;j<3;j++){if(vote[0]==Cadt[j].name)Cadt[j].score+=5;if(vote[1]==Cadt[j].name)Cadt[j].score+=3;if(vote[2]==Cadt[j].name)Cadt[j].score+=2;}}printf("三位候选人得分:");for(j=0;j<3;j++)printf("%c:%d",Cad

7、t[j].name,Cadt[j].score);if(Cadt[0].score==Cadt[1].score

8、

9、Cadt[1].score==Cadt[2].score

10、

11、Cadt[2].score==Cadt[0].score)printf("pleasevoteagaine.");elseif(Cadt[0].score

12、当选冠军.",Cadt[0].name);}程序运行情况如下:(1)当遇到一张选票上写有两个代号相同时成功显示“该票无

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。