投票程序
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算机高级语言课程设计报告
中国地质大学
投票程序
学生姓名:
学号:班级:指导教师:
第七题
一、题目要求
设有代号’a’,’b’,’c’的三个足球先生候选人,根据投票者在选票上对他们编号的填写顺序分别记分5,3,2。
请编程从键盘上输入投票人数及投票结果,统计他们的得分,并输出哪位当足球先生。
注意:
若同一张票上写有两个相同的代号,则显示“此票无效”,若最终前两名得分相同应显示“重新投票”,否则显示三个候选人得分并输出“祝贺X当选冠军!”。
例如:投票人数:5
输入投票内容:
a b c
c a b
c a a 该票无效!
c b a
b c a
三位候选人得分:
a:12
b:13
c:15
祝贺c当选冠军!
二、需求分析
应提供投票信息的输入、输出等操作,还需要浏览投票的信息、显示等操作。
三、总体设计
四、详细设计:流程图:
[程序]
#include "stdio.h"
main()
{
int i,num,x=0,y=0,z=0;
char k[3];
int fenshu(char x,char y[3]);
printf("\n can jia xuan ju ren shu: ");
scanf("%d",&num);
printf("\n xuan piao xin xi:\n");
for(i=0;i<num;i++)
{scanf("%s",k);
if(k[0]==k[1]||k[1]==k[2]||k[0]==k[2])
printf("gai piao wu xiao!\n");
else
{x=x+fenshu('a',k);
y=y+fenshu('b',k);
z=z+fenshu('c',k);
}
}
printf("\n The three candidates who score :\na: %d\nb: %d\nc: %d\n",x,y,z);
if(x==y&&x>z)printf("\n a b de fen shuo xiang tong , chong xin tou piao!\n");
if(x==z&&x>y)printf("\n a c de fen shuo xiang tong , chong xin tou piao!\n");
if(y==z&&y>x)printf("\n b c de fen shuo xiang tong , chong xin tou piao!\n");
if(x==y&&x==z)printf("\n a b c de fen shuo xiang tong , chong xin tou piao!\n"); if(x>y&&x>z)printf("\n Congratulation a !\n");
if(y>x&&y>z)printf("\n Congratulation b !\n");
if(z>x&&z>y)printf("\n Congratulation c !\n");
getchar();
getchar();
}
2.公共函数:[流程图]
[程序]
Fenshu(char x,char y[3]) {int m;
if(x==y[0]) m=5;
if(x==y[1]) m=3;
if(x==y[2]) m=2; return(m);
}
}
五、上机操作运行界面如下:1)主函数界面
2)输入界面
3)结果输出界面
六、总结
通过短短的一个星期的C语言上机实习,我学到了很多知识,不仅复习了C语言的基础知识。
而且掌握了如何用C 语言来编程以解决一些简单问题。
同时,通过这一周的实习,也让我认识到在C语言上我有很多的不足,有很多问题不清楚,有些知识很是生疏。
比如函数的调用。
在以后的学习中我会努力学习基础知识,只有根基结实,才能在以后的学习中不会因为一些简单的问题而苦恼,才能够在C语言上取得一些成绩。