数据结构课设----运动会分数统计系统(C++版)
1.1② 运动会分数统计
【问题描述】
参加运动会的n个学校编号为1~n。比赛分成m个男子项目和w个女子项目,项目编号分别为1~m和m+1~m+w。由于各项目参加人数差别较大,有些项目取前五名,得分顺序为7,5,3,2,1;还有些项目只取前三名,得分顺序为5;3,2。写一个统计程序产生各种成绩单和得分报表。
【基本要求】
产生各学校的成绩单,内容包括各校所取得的每项成绩的项目号、名次(成绩)、姓名和得分;产生团体总分报表,内容包括校号、男子团体总分、女子团体总分和团体总分。
【测试数据】
对于n=4,m=3,w=2,编号为奇数的项目取前五名,编号为偶数的项目取前三名,设计一组实例数据。
【实现提示】
可以假设n≤20,m≤30,w≤20,姓名长度不超过20个字符。每个项目结束时,将其编号、类型符(区分取前五名还是前三名)输入,并按名次顺序输入运动员姓名、校名(和成绩)。
【选作内容】
允许用户指定某项目采取其他名次取法。
废话不多说,直接上代码!(欢迎私信和评论!)
#include #include #include #define _CRT_SECURE_NO_WARNINGS using namespace std; #define N 20 //学校最大数目 #define M 30 //男子项目最大数 #define W 20 //女子项目最大数 //存放项目信息的结构体 typedef struct { int inum;//项目编号 int top;//取名次的数目 int range[5];//名次 int mark[5];//分数 }itemnode; //存放学校信息的结构体 typedef struct { int snum;//学校编号 int score;//学校总分 int mscore;//男子总分 int wscore;//女子总分 itemnode t[M + W];//项目数组 }snode; snode a[N];//定义一个学校数组 //菜单函数 void menu(int n, int m, int w) {//n代表学校数,m代表男子数,w代表女子数 int c; void input(int n, int m, int w);//输入功能 void output(int n, int m, int w);//输出功能 void sortput(int n, int m, int w);//排序输出 void search(int n, int m, int w);//查询功能 cout
文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。