




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数据结构实验报告 实验内容:运动会竞赛成绩统计数据结构实验报告一课题概述1二概要设计原理1三详细程序清单及注释说明2四运行与测试及结果7五本人编写函数11六心得体会13七参考文献1313一、课题概述1.实验目的:线性表应用类实验题目参考2.实验内容:运动会竞赛成绩统计 【问题描述】东北大学第51届运动大会成功举行。共有N个学院的男女代表队参赛。大会共设M个男子项目和W个女子项目。大会即将闭幕,准备公布成绩。【实验要求】设计运动会竞赛成绩统计程序。(1)采用顺序表或链表等数据结构。(2)统计各代表队的男女总分和团体总分。(3)公布各单项成绩的前六名和团体成绩的前三名。 (4)可以查询成绩。二、概
2、要设计原理本程序主要采用了链表的存储结构,实现了对数据的存储,访问等操作。本程序实现了男子团体成绩、女子团体成绩、总成绩的输出。以及对个单项和团体成绩的前六名的输出。并实现了查找功能。程序主要分为四个函数:1. Zongfen()这个函数主要实现计算各学院的男子总分、女子总分、以及团体总分的计算以及存储操作。2. tuandui_paiming()此函数运用了排顺函数,实现了对团体总分的排序,以及前六名的输出。3. danxiang_paiming()此函数运用了排序函数,实现了对单项成绩的排名,以及对各个单项前六名的输出。4. chazhao()通过此函数,可以实现对各个学院的查找,并且显示
3、出各个学院的单项成绩,以及男子团体成绩、女子团体成绩 、总成绩的输出。5. main()6. 主函数,实现对所有函数的协调,并且执行了一些程序中相当关键的部分,对整个程序的执行以及正确的输出起到了很大的作用。7. zhujiemain()主界面函数,实现函数运行时界面的输出,以及对接下来操作的选择,是整个程序的关键部分。三、详细程序清单及注释说明#include<stdio.h>#include<stdlib.h>#include<string.h>typedef struct xueyuanchar name10; /学院名称int Mdata5; /5个
4、男子项目成绩int Wdata5; /5个女子项目成绩 int man; /男子项目总成绩 int woman; /女子项目总成绩 int total; /学院总成绩struct xueyuan *next;xueyuan,*Lxueyuan;Lxueyuan L;void zhujiemian();char Mname520; /5个男子项目名称char Wname520; /5个女子项目成绩char b910;int a9;char xueyuan_name9="信息","机械","软件","材冶","
5、;资土","外国语","文法","工管","理"int fenshu910=7,8,5,6,2,5,8,7,4,5, 5,6,8,7,4,5,2,1,3,5, 8,6,5,4,2,3,5,4,7,4, 8,5,4,7,1,5,4,7,8,5, 7,5,4,6,5,8,6,9,5,6, 7,5,6,4,2,3,8,9,6,5, 7,5,4,2,6,9,8,5,6,1, 5,6,4,8,5,6,5,4,9,8, 8,5,4,2,6,8,9,6,5,8 ;void shuju() /数据处理int i,j;st
6、rcpy(Mname0,"男子100米");strcpy(Mname1,"男子110米栏");strcpy(Mname2,"男子铅球");strcpy(Mname3,"男子铁饼");strcpy(Mname4,"男子体操");strcpy(Wname0,"女子100米");strcpy(Wname1,"女子100米栏");strcpy(Wname2,"女子铅球");strcpy(Wname3,"女子铁饼");strc
7、py(Wname4,"女子体操");L=(Lxueyuan)malloc(sizeof(xueyuan);Lxueyuan p;L->next=NULL;for(i=0;i<9;i+)p=(Lxueyuan)malloc(sizeof(xueyuan);strcpy(p->name,xueyuan_namei);for(j=0;j<5;j+)p->Mdataj=fenshuij;for(j=0;j<5;j+)p->Wdataj=fenshuij+5;p->next=L->next;L->next=p;void zo
8、ngfen() /计算总分 以及输出int i;Lxueyuan p;p=L->next;printf("-各学院总分-n");printf("学院 男子总成绩 女子总成绩 总成绩");for(i=0;i<9;i+)printf("n%stt",p->name);p->man=p->Mdata0+p->Mdata1+p->Mdata2+p->Mdata3+p->Mdata4;p->woman=p->Wdata0+p->Wdata1+p->Wdata2+p-&
9、gt;Wdata3+p->Wdata4;p->total=p->Mdata0+p->Mdata1+p->Mdata2+p->Mdata3+p->Mdata4+p->Wdata0+p->Wdata1+p->Wdata2+p->Wdata3+p->Wdata4;printf("%dtt%dtt",p->man,p->woman);printf("%d",p->total);p=p->next;void paixu(int a9,char b910)int i,j,
10、k;char c10;for(i=0;i<9;i+)for(j=0;j<9-i;j+)if(aj<=aj+1)k=aj;aj=aj+1;aj+1=k;strcpy(c,bj);strcpy(bj,bj+1);strcpy(bj+1,c);void tuandui_paiming() /公布团体排名int i;printf("nnn-团体排名-n");printf(" 学院 第一名 第二名 第三名 第四名 第五名 第六名 ");Lxueyuan p;p=L->next; for(i=0;i<9;i+) ai=p->man
11、;strcpy(bi,p->name);p=p->next; paixu(a,b); printf("n男子项目t"); for(i=0;i<6;i+) printf("%st",bi); p=L->next; for(i=0;i<9;i+) ai=p->woman;strcpy(bi,p->name);p=p->next; paixu(a,b); printf("n女子项目t"); for(i=0;i<6;i+) printf("%st",bi); p=L-&
12、gt;next; for(i=0;i<9;i+) ai=p->total;strcpy(bi,p->name); p=p->next; paixu(a,b); printf("n总项目tt"); for(i=0;i<6;i+) printf("%st",bi); printf("n");zhujiemian();void danxiang_paiming()int i,j;printf("nnn-单项排名-n");printf(" 学院 第一名 第二名 第三名 第四名 第五名
13、 第六名 ");Lxueyuan p;for(j=0;j<5;j+)p=L->next;for(i=0;i<9;i+) ai=p->Mdataj;strcpy(bi,p->name); p=p->next; paixu(a,b); printf("n%st",Mnamej); for(i=0;i<6;i+) printf("%st",bi); for(j=0;j<5;j+)p=L->next;for(i=0;i<9;i+) ai=p->Wdataj;strcpy(bi,p->
14、;name); p=p->next; paixu(a,b); printf("n%st",Wnamej); for(i=0;i<6;i+) printf("%st",bi); zhujiemian();void chazhao() /查找函数int i;char abc20;printf("请输入您要查找的学院名称:");scanf("%s",abc);Lxueyuan p;p=L->next;while(p)if(strcmp(p->name,abc)break;if(p=NULL)pri
15、ntf("您查找的学院不存在!n");elsefor(i=0;i<5;i+)printf("%s:t%d分n",Mnamei,p->Mdatai);for(i=0;i<5;i+)printf("%s:t%d分n",Wnamei,p->Wdatai);printf("男子总成绩:t%d分n",p->man);printf("女子总成绩:t%d分n",p->woman);printf("总成绩:t%d分n",p->total);zhuji
16、emian();void zhujiemian() printf("-n" "- 1.总成绩及团体排名 -n" "- 2.单项排名 -n" "- 3.查找 -n" "- 其他.退出 -n" "-n");int choose;printf("请输入您的选择:");scanf("%d",&choose);switch(choose)case 1:zongfen();tuandui_paiming();break;case 2:dan
17、xiang_paiming();break;case 3:chazhao();break;default:exit(0);void main() /主函数shuju(); zhujiemian();四运行与测试及结果1.主界面2.各学院总分3.团体总分4.单项排名5.查找信息-机械6.退出五本人编写函数#include<stdio.h>#include<stdlib.h>#include<string.h>typedef struct xueyuanchar name10; /学院名称int Mdata5; /5个男子项目成绩int Wdata5; /5个女
18、子项目成绩 int man; /男子项目总成绩 int woman; /女子项目总成绩 int total; /学院总成绩struct xueyuan *next;xueyuan,*Lxueyuan;Lxueyuan L;void zhujiemian();char Mname520; /5个男子项目名称char Wname520; /5个女子项目成绩char b910;int a9;char xueyuan_name9="信息","机械","软件","材冶","资土","外国语&qu
19、ot;,"文法","工管","理"int fenshu910=7,8,5,6,2,5,8,7,4,5, 5,6,8,7,4,5,2,1,3,5, 8,6,5,4,2,3,5,4,7,4, 8,5,4,7,1,5,4,7,8,5, 7,5,4,6,5,8,6,9,5,6, 7,5,6,4,2,3,8,9,6,5, 7,5,4,2,6,9,8,5,6,1, 5,6,4,8,5,6,5,4,9,8, 8,5,4,2,6,8,9,6,5,8 ;void shuju() /数据处理int i,j;strcpy(Mname0,"男子10
20、0米");strcpy(Mname1,"男子110米栏");strcpy(Mname2,"男子铅球");strcpy(Mname3,"男子铁饼");strcpy(Mname4,"男子体操");strcpy(Wname0,"女子100米");strcpy(Wname1,"女子100米栏");strcpy(Wname2,"女子铅球");strcpy(Wname3,"女子铁饼");strcpy(Wname4,"女子体操&q
21、uot;);L=(Lxueyuan)malloc(sizeof(xueyuan);Lxueyuan p;L->next=NULL;for(i=0;i<9;i+)p=(Lxueyuan)malloc(sizeof(xueyuan);strcpy(p->name,xueyuan_namei);for(j=0;j<5;j+)p->Mdataj=fenshuij;for(j=0;j<5;j+)p->Wdataj=fenshuij+5;p->next=L->next;L->next=p;void zongfen() /计算总分 以及输出int
22、i;Lxueyuan p;p=L->next;printf("-各学院总分-n");printf("学院 男子总成绩 女子总成绩 总成绩");for(i=0;i<9;i+)printf("n%stt",p->name);p->man=p->Mdata0+p->Mdata1+p->Mdata2+p->Mdata3+p->Mdata4;p->woman=p->Wdata0+p->Wdata1+p->Wdata2+p->Wdata3+p->Wdata4;p->total=p->Mdata0+p->M
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 五年级上数学教案-三角形的面积练习课-苏教版秋
- 三年级上册数学教案-1.1 估算两、三位数乘一位数丨苏教版
- 学习2025年雷锋精神六十二周年主题活动实施方案 (3份)-76
- 苏教版数学三年级上册单元测试卷-第四单元-两、三位数除以一位数含答案
- 人教版三年级英语上册期末测试卷
- 2025年河南省安全员《A证》考试题库及答案
- 2025辽宁省安全员知识题库
- 医院钢结构居间合同范本
- 2025年度城市综合体车位租赁合同
- 2025年度股权质押合同工商局备案及企业环境管理体系认证服务协议
- SHAFER气液联动执行机构培训
- 湖南省六年级上册数学期末试卷(含答案)
- 部编版小学六年级道德与法治下册课堂达标检测试卷全册含答案
- 他们创造了数学:50位著名数学家的故事
- 《普洱茶的定义》课件
- 2023山东经贸职业学院教师招聘考试真题题库
- 《定向运动》教学大纲(含课程思政要素)
- 内浮顶储罐检修安全规范
- 特殊教育:康复训练课程标准(年版)
- 注塑员工绩效考核方案
- DCMM理论知识考试试题及答案
评论
0/150
提交评论