欢迎来到天天文库
浏览记录
ID:58700898
大小:78.50 KB
页数:23页
时间:2020-10-04
《运动会成绩统计实验报告.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验说明题目:运动会分数统计一.需求分析:1.在该程序中,参赛学校编号为1~n(n<=20)。比赛分成m(m<=30)个男子项目和w(w<=20)个女子项目,分别编号为1~m和m+1~m+w,姓名长度不超过20个字符;2.输入各个项目信息的详细信息,包括项目号,姓名,性别,学校和名次。3.对于项目编号为奇数的取前五名,得分顺序为7,5,3,2,1;为偶数的取前三名,得分顺序为5,3,2。4.程序执行的命令包括:1)构造线性表的存储结构。2)根据每个学生的名次确定相应的得分。3)输出各个学校的成绩单和男子团体总分,女子团体总分和团体总分。二.概要设计1.该程序包含两个结构体
2、分别为:结构体(1)运动员信息结构体(2)学校信息2.本程序包括4个模块:1>初始化学校信息。2>依次输入每个运动员的信息。3>根据每个学生的成绩计算对应的得分,及个学校的总得分、男团总分、女团总分。4>生成个学校的成绩单,并输出。三.详细设计1.数据结构的定义:描述运动员的线性表typedefstruct{intitem[MAXSIZE];//参赛项目号charthletename[MAXSIZE][20];//姓名charsex[MAXSIZE];//性别intschoolnum[MAXSIZE];//所在学校编号intnum[MAXSIZE];//名次intpoin
3、t[MAXSIZE];//得分intlast;}Thlete;描述学校的线性表typedefstruct{intschoolnum[MAXSIZE];//学校编号intTgirl[MAXSIZE];//女生团体总分intTboy[MAXSIZE];//男生团体总分intTall[MAXSIZE];//学校总成绩intlast;}School;.控制输入的函数intinput(Thlete*S1,intn,intm,intw){cout<<"项目号"<<'t'<<"姓名"<<'t'<<"性别"<<'t'<<"学校号"<<'t'<<"名次"<<'t'<4、nti=0,j=1,k=0;if(S1->last==MAXSIZE-1){cout<<"运动员人数已满,无法继续输入!"<>S1->item[i]&&S1->item[i]!=0){cin>>S1->thletename[i]>>S1->sex[i]>>S1->schoolnum[i]>>S1->num[i];i++;if(i==100-1){cout<<"运动员人数已满,无法继续输入!"<last=i;for(i=0;ilast;i++){if(S1->5、schoolnum[i]>n){cout<<"您的输入有误,输入学校个数不能超过"<sex[i]!='g'&&S1->sex[i]!='b'){cout<<"您的输入有误,输入运动员性别只能用'g'(女)或'b'(男)表示请重新输入!"<item[i]>=0&&S1->item[i]<=m&&S1->sex[i]!='b'){cout<<"您的输入有误,项目号与性别不匹配,请重新6、输入!"<item[i]>=m+1&&S1->item[i]<=m+w&&S1->sex[i]!='g'){cout<<"您的输入有误,项目号与性别不匹配,请重新输入!"<last+1;i++){if(L1->item[i]%2==1)7、//项目编号为奇数的按第一种评分方法计算得分{if(L1->num[i]==1)L1->point[i]=7;if(L1->num[i]==2)L1->point[i]=5;if(L1->num[i]==3)L1->point[i]=3;if(L1->num[i]==4)L1->point[i]=2;if(L1->num[i]==5)L1->point[i]=1;if(L1->num[i]>5)L1->point[i]=0;}if(L1->item[i]%2==0)//项目编号为偶数的按第二种评分方法计算得分{if(L1->n
4、nti=0,j=1,k=0;if(S1->last==MAXSIZE-1){cout<<"运动员人数已满,无法继续输入!"<>S1->item[i]&&S1->item[i]!=0){cin>>S1->thletename[i]>>S1->sex[i]>>S1->schoolnum[i]>>S1->num[i];i++;if(i==100-1){cout<<"运动员人数已满,无法继续输入!"<last=i;for(i=0;ilast;i++){if(S1->
5、schoolnum[i]>n){cout<<"您的输入有误,输入学校个数不能超过"<sex[i]!='g'&&S1->sex[i]!='b'){cout<<"您的输入有误,输入运动员性别只能用'g'(女)或'b'(男)表示请重新输入!"<item[i]>=0&&S1->item[i]<=m&&S1->sex[i]!='b'){cout<<"您的输入有误,项目号与性别不匹配,请重新
6、输入!"<item[i]>=m+1&&S1->item[i]<=m+w&&S1->sex[i]!='g'){cout<<"您的输入有误,项目号与性别不匹配,请重新输入!"<last+1;i++){if(L1->item[i]%2==1)
7、//项目编号为奇数的按第一种评分方法计算得分{if(L1->num[i]==1)L1->point[i]=7;if(L1->num[i]==2)L1->point[i]=5;if(L1->num[i]==3)L1->point[i]=3;if(L1->num[i]==4)L1->point[i]=2;if(L1->num[i]==5)L1->point[i]=1;if(L1->num[i]>5)L1->point[i]=0;}if(L1->item[i]%2==0)//项目编号为偶数的按第二种评分方法计算得分{if(L1->n
此文档下载收益归作者所有