资源简介
参加运动会有n个学校,学校编号为1……n。比赛分成m个男子项目,和w个女子项目。项目编号为男子1~m,女子m+1~m+w。不同的项目取前五名或前三名积分;取前五名的积分分别为:7、5、3、2、1,前三名的积分分别为:5、3、2;哪些项目取前五名或前三名由学生自己设定。(m<=20,n<=20)
功能要求:
1) 可以输入各个项目的前三名或前五名的成绩;
2) 能统计各学校总分;
3) 可以按学校编号、学校总分、男女团体总分排序输出;
4) 可以按学校编号查询学校某个项目的情况;
5) 可以按项目编号查询取得前三或前五名的学校。
代码片段和文件信息
#define M 20
#include
#include “stdio.h“
#include “string.h“
#include “stdlib.h“
int mmmw;
struct scorelist
{
int score;
char schoolnum[5];
int itemnum[5];
};
struct School
{
char schoolnum[5];
struct scorelist list[M];
int teamscore;
int mscore;
int gscore;
};
struct School school[M];
main()
{
FILE *f;
int ij;
f=fopen(“score.dat““r“);
for(i=1;i<=3;i++)
{
if(i==1) fscanf(f“%d“&mm);
if(i==2) fscanf(f“%d“&m);
if(i==3) fscanf(f“%d“&w);
}
for(i=1;i<=mm;i++)
{
fscanf(f“%s“school[i].schoolnum);
for(j=1;j<=2*(w+m);j++)
{
if(j<=w+m)
fscanf(f“%s“school[i].list[j].itemnum );
else
fscanf(f“%d“&school[i].list[j-w-m].score );
}
}
fclose(f);
printf(“%4d%4d%4d\n“mmmw);
for(i=1;i<=mm;i++)
{
printf(“%s “school[i].schoolnum);
for(j=1;j<=w+m;j++)
printf(“%s “school[i].list[j].itemnum);
for(j=1;j<=w+m;j++)
printf(“%d “school[i].list[j].score);
printf(“\n“);
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1174 2009-01-06 20:38 数据结构课程设计\123.cpp
文件 172089 2009-01-06 20:38 数据结构课程设计\123.exe
文件 4573 2009-01-06 20:38 数据结构课程设计\123.obj
文件 239 2009-01-06 14:37 数据结构课程设计\score.dat
文件 3 2009-01-06 20:38 数据结构课程设计\tctemp.dat
文件 172089 2009-01-06 20:38 数据结构课程设计\tempfile.exe
目录 0 2009-01-06 20:30 数据结构课程设计
----------- --------- ---------- ----- ----
350167 7
评论
共有 条评论