1、课程设计目的 :
C语言程序设计课程设计是计算机科学与技术专业重要的实践性教学环节之一,本次设计结合实际应用的要求,使课程设计既覆盖C语言的知识点,又接近工程实际需要。目的是通过课程设计的综合训练,培养学生实际分析问题、解决问题的能力,以及编程和动手能力,最终目标是通过课程设计这种形式,帮助学生系统掌握C语言程序设计这门课程的主要内容,养成良好的编程习惯,更好的完成教学任务。
2、课程设计任务与要求:
本次课程设计利用《C语言程序设计》课程中所学到的编程知识和编程技巧,完成具有一定难度和工作量的程序设计题目,帮助学生掌握编程、调试的基本技能,独立完成所布置的任务。 要求: 1、对系统进行功能需求分析 2、设计合理的数据结构和系统框架 3、编程简练,程序功能齐全,能正确运行 4、说明书、流程图要清楚 5、课题完成后必须按要求提交课程设计报告 任务: 设计一个运动会管理系统,用于管理比赛时体操、跳水、滑冰等赛事裁判员对赛事的评分。假设只有这3场比赛event,每场有5个裁判评分。 实现功能: 1)能够提供一个程序界面对运动员的基本资料进行输入、删除、修改和查询等,基本资料应保存在文件中。 2)能够输入、修改、查询某项比赛event的比赛时间,3项比赛的资料保存在文件中。 3) 比赛项目分男子组和女子组,每个运动员的总分计算规则是:去掉最高分、去掉最低分求平均值。 4) 提供界面让工作人员输入每场比赛的所有运动员的每个裁判的分数,能查询某场比赛所有运动员的最后得分 5)评分的资料保存在score.txt中,包含的数据项有:所属的学校、运动员编号、得分1、得分2、得分3、得分4、得分5、总分、平均分。
void Modification1() /*修改比赛时间*/
{
FILE *fp2;
event en,en1;
int a,n,i;
if((fp2=fopen("d:\\校运动会管理系统\\time.txt","rb+"))==NULL) /*为了读和写,打开一个二进制文件*/
{
printf("不能建立!");
exit(5);
}
printf("请输入需要修改比赛编号(1.体操 2.跳水 3.滑冰 )");
scanf("%d",&a);
fseek(fp2,0,2);
n=ftell(fp2)/sizeof(event);
rewind(fp2);
for(i=0;i<n;i++)
{
fread(&en,sizeof(event),1,fp2);
if(en.number==a) break;
}
if(i<n)
{
printf("输入新的比赛时间:\n");
scanf("%s",en1.time);
strcpy(en1.name,en.name);
en1.number=en.number;
fseek(fp2,-1*(long)sizeof(event),1);
fwrite(&en1,sizeof(event),1,fp2);
printf("修改成功!\n");
}
else
printf("未找到!\n");
fclose(fp2);
}
void Inquire1() /*查询比赛时间*/
{
FILE *fp2;
event en;
if((fp2=fopen("d:\\校运动会管理系统\\time.txt","rb"))==NULL)
{
printf("不能建立!");
exit(6);
}
printf("* * * * * * 时间表 * * * * * *\n");
while(fread(&en,sizeof(event),1,fp2)>0)
{
printf("%s %s",en.name,en.time);
printf("\n");
}
}