C语言课程设计报告完整版 .pdf
C语言课程设计实习报告
学生姓名:
学生学号:
所在班级:
任课教师:
课程成绩:
1.题目需求
(1)在歌星大奖赛中,有10个评委为参赛的选手打分,
分数为1~100分。选手的最后得分为:去掉一个
最高分和一个最低分后其余8个数的平均值。
(2)同时对评委评分进行裁判,即在十个评委中找出
最公平(即评分最接近平均分)和最不公平(即
与平均分差距最大)的评委。
2.需求分析
根据题目要求,由于数据间单,仅涉及到简
单排序及转换,程序中应提供显示、输入、输出、排序等操
作,同时还可以提供键盘式选择菜单实现功能选择。
3.总体设计
这个系统可分为三个模块(见图1),评分、
对评委测评、退出。其中主要功能是最终得
分和对评委测评两个模块。
歌星大奖赛评选系统
评分对评委测评退出
图1系统功能模块图
4.详细设计
主函数比较简洁,只提供输入、功能处理和
输出部分的函数调用。其中各功能模块用菜单方式选择;另
外,菜单部分也可以写成函数。其流程图如图2所示。
开始
显示一系列功能选项
输入n,判断n是否是N
0~2?
根据n的值调用各功能模块函数
结束
图2主函数流程图
[程序]
}#includestdio.h
#includemath.h
main()/*主函数*/
{voidVote_score();/*声明评分函数*/
voidBaW();/*声明对裁判测评函数*/
intn,w;
do
{puts(\t\t**************************MENU******************
*******\n\n);/*选择菜单*/
puts(\t\t\t\t1.Voteandthescore);/*对歌手评分*/
puts(\t\t\t\t2.Bestandworestvoter);/*对裁判测评*/
puts(\t\t\t\t0.Exit);/*退出*/
puts(\n\n\t\t
****************************************************\n\n);
printf(Choiceyournumber(0-2):[]\b\b);
scanf(%d,n);
if(n0||n2)/*对选择的数字做判断*/
{w=1;
getchar();
}
elsew=0;
}
while(w==1);/*选择功能*/
switch(n)
{
case1:Vote_score();break;
case2:BaW();break;
case0:exit(0);
}
}
voidVote_score()/*评分函数*/
{
inta[10],b[10],i,j,k,B,n,w;
floatA;
B=0;
printf(inputthecontent:\n);
for(i=