资源简介
运动会分数统计 C语言版数据结构课设 可以直接运行程序
代码片段和文件信息
#include
#include
#include
#define n0 20 /*学校最大数目*/
#define m0 20 /*男子项目最大数目*/
#define w0 20 /*女子项目最大数目*/
typedef struct itemnode
{
int item[m0+w0+5][n0+1];
//item[1][0]-item[m0+w0][0] 存放项目编号
//item[0][1]-item[0][n] 存放学校编号
//item[1][]-item[m0][] 存放男子各项目成绩
//item[m0+1][]-item[m0+w0][]存放女子各项目成绩
//item[m0+w0+1][]存放男子各项目总成绩
//item[m0+w0+2][]存放女子各项目总成绩
//item[m0+w0+3][]存放学校各项目总成绩
//item[m0+w0+4][]存放学校按总分排序的名次
}itemnode; /*存放信息*/
int main()
{
int nmw;
printf(“ 北京信息科技大学运动会分数统计系统 \n“);
printf(“\t\t\t欢迎使用\t\t\t\t\n\n“);
printf(“该系统实现的功能有:\n“);
printf(“ 1.可以输入各个项目的前三名或前五名的成绩;\n“);
printf(“ 2.能统计各学校总分;\n“);
printf(“ 3.可以按学校编号、学校总分、男女团体总分排序输出;\n“);
printf(“ 4.可以按学校编号查询取得前三或者前五名的学校。\n“);
printf(“实现功能2、3、4的前提是先录入信息!\n“);
printf(“请先输入运动会主要信息\n“); /*设计运动会主要数据个数*/
printf(“输入学校个数:“);
scanf(“%d“&n);
printf(“输入男子项目个数:“);
scanf(“%d“&m);
printf(“输入女子项目个数:“);
scanf(“%d“&w);
int c;
int ij;
struct itemnode a;
for(i=1;i {
printf(“请输入第%d个学校编号:“i);
scanf(“%d“&a.item[0][i]);
printf(“\n“);
}
for(j=1;j {
printf(“请输入第%d个男子项目编号:“j);
scanf(“%d“&a.item[j][0]);
printf(“\n“);
}
for(j=m+1;j {
printf(“请输入第%d个女子项目编号:“j-m);
scanf(“%d“&a.item[j][0]);
printf(“\n“);
}
for(i=1;i {
for(j=1;j {
printf(“请输入第%d个学校第%d个男子项目成绩:“ij);
scanf(“%d“&a.item[j][i]);
printf(“\n“);
}
for(j=m+1;j {
printf(“请输入第%d个学校第%d个女子项目成绩:“ij-m);
scanf(“%d“&a.item[j][i]);
printf(“\n“);
}
}
for(i=1;i {
a.item[m+w+1][i]=0;
a.item[m+w+2][i]=0;
a.item[m+w+3][i]=0;
a.item[m+w+4][i]=0;
}
//下面计算各学校、各学校男子、女子项目总分
for(i=1;i {
for(j=1;j {
a.item[m+w+3][i]+=a.item[j][i];//学校项目总分
}
}
for(i=1;i {
for(j=1;j {
a.item[m+w+1][i]+=a.item[j][i];//男子项目总分
}
}
for(i=1;i {
for(j=m+1;j {
a.item[m+w+2][i]+=a.item[j][i];//女子项目总分
}
}
printf(“****************************************排序输出*************************************\n“);
//插入排序啦 很简单的
int temptemp1;
int xu;
for(i=2;i {
temp=a.item[m+w+3][i];
for(j=i-1;j>=1&&temp>a.item[m+w+3][j];j--)//寻找插入位置
{
a.item[m+w+3][j+1]=a.item[m+w+3][j];//交换总分列
for(xu=0;xu {
if(xu!=m+w+3)//除了总
评论
共有 条评论