-
大小: 9KB文件類型: .cpp金幣: 1下載: 0 次發(fā)布日期: 2021-06-10
- 語(yǔ)言: C/C++
- 標(biāo)簽:
資源簡(jiǎn)介
運(yùn)動(dòng)會(huì)比賽計(jì)分系統(tǒng)
要求:初始化輸入:N-參賽學(xué)??倲?shù),M-男子競(jìng)賽項(xiàng)目數(shù),W-女子競(jìng)賽項(xiàng)目數(shù)
各項(xiàng)目名次取法有如下幾種:
取前5名:第一名得分7分,第二名得分5,第三名得分3,第四名得分2,第五名得分1;
取前3名:第一名得分5,第二名得分3,第三名得分2;
功能要求:
(1)系統(tǒng)以菜單方式工作
(2)由程序提醒用戶填寫(xiě)比賽結(jié)果,輸入各項(xiàng)目獲獎(jiǎng)運(yùn)動(dòng)員信息。
(3)所有信息記錄完畢后,用戶可以查詢各個(gè)學(xué)校的比賽成績(jī)
(4)查看參賽學(xué)校信息和比賽項(xiàng)目信息等。
(要求:1.源文件采用多文件的工程結(jié)構(gòu)2.數(shù)據(jù)存儲(chǔ)采用文件形式3.標(biāo)準(zhǔn)的C輸入輸出4.功能完善,適當(dāng)?shù)淖⑨專?.關(guān)于文件的內(nèi)容需要自學(xué))
代碼片段和文件信息
/*
21.?運(yùn)動(dòng)會(huì)比賽計(jì)分系統(tǒng)
要求:初始化輸入:N-參賽學(xué)??倲?shù),M-男子競(jìng)賽項(xiàng)目數(shù),W-女子競(jìng)賽項(xiàng)目數(shù)
各項(xiàng)目名次取法有如下幾種:
取前5名:第一名得分7分,第二名得分5,第三名得分3,第四名得分2,第五名得分1;
取前3名:第一名得分5,第二名得分3,第三名得分2;
功能要求:
(1)系統(tǒng)以菜單方式工作
(2)由程序提醒用戶填寫(xiě)比賽結(jié)果,輸入各項(xiàng)目獲獎(jiǎng)運(yùn)動(dòng)員信息。
(3)所有信息記錄完畢后,用戶可以查詢各個(gè)學(xué)校的比賽成績(jī)
(4)查看參賽學(xué)校信息和比賽項(xiàng)目信息等。
(要求:1.源文件采用多文件的工程結(jié)構(gòu)2.數(shù)據(jù)存儲(chǔ)采用文件形式3.標(biāo)準(zhǔn)的C輸入輸出4.功能完善,適當(dāng)?shù)淖⑨專?.關(guān)于文件的內(nèi)容需要自學(xué))
*/
#include
#include
#include?
#include?
#include?
#define?n?2 //學(xué)校數(shù)目??
#define?m?1 //男子項(xiàng)目數(shù)目?
#define?w?1 //女子項(xiàng)目數(shù)目
#define?null?0
struct?itemnode{?
int?itemnum; //項(xiàng)目編號(hào)
????int?top; //取名次的數(shù)目
????int?range[5]; //名次
????int?mark[5]; //分?jǐn)?shù)
int?ncnum[10];
????char?name[8];
}; //定義項(xiàng)目結(jié)點(diǎn)的類型
struct?headnode{
int?schoolnum; //學(xué)校編號(hào)
????int?score; //學(xué)??偡?br/>????int?mscore; //男團(tuán)體總分
????int?wscore; //女團(tuán)體總分
????itemnode?c[m+w]; //項(xiàng)目數(shù)組
}; //定義頭結(jié)點(diǎn)類型
headnode?h[n]; //定義一個(gè)頭結(jié)點(diǎn)數(shù)組
void?inputinformation()??//輸入信息,建立系統(tǒng)
{??
int?ijksu;
char?ch;?????????????????????????????????????
????for(i=0;i ????{???
h[i].score=0;
????????h[i].mscore=0;
????????h[i].wscore=0; //初始化頭結(jié)點(diǎn)
printf(“====參賽學(xué)校編號(hào):“);
????????scanf(“%d“&h[i].schoolnum);????//輸入頭結(jié)點(diǎn)信息
????????for(j=0;j {??
printf(“????參賽項(xiàng)目編號(hào):“);
????????????scanf(“%d“&h[i].c[j].itemnum);
????printf(“????取前3名or前5名:“);
????????????scanf(“%d“&h[i].c[j].top);
????????????printf(“????所取名次數(shù)量:“);
scanf(“%d“&k);
// scanf(“%d“&h[i].c[j].ncnum[u]);//輸入項(xiàng)目信息
// u++;
????????????for(s=0;s {???
????????????????h[i].c[j].range[s]=0;
h[i].c[j].mark[s]=0; //初始化排名和分?jǐn)?shù)
printf(“????所獲得的名次:“);
????????????????scanf(“%d“&h[i].c[j].range[s]);???//輸入所獲名次信息
????????????????printf(“????該運(yùn)動(dòng)員姓名:“);
getchar(ch);
gets(h[i].c[j].name);
????????????????if(h[i].c[j].top==3)
????????????????switch(h[i].c[j].range[s])
????????????????{?
???????????????????case?0:?h[i].c[j].mark[s]=0;?break;
???????????????????case?1:?h[i].c[j].mark[s]=5;?break;
???????????????????case?2:?h[i].c[j].mark[s]=3;?break;
???????????????????case?3:?h[i].c[j].mark[s]=2;?break;
????????????????}
????????????????else
????????????????switch(h[i].c[j].range[s])
{?
??????????????????case?0:?h[i].c[j].mark[s]=0;?break;
??????????????????case?1:?h[i].c[j].mark[s]=7;?break;
??????????????????case?2:?h[i].c[j].mark[s]=5;?break;
??????????????????case?3:?h[i].c[j].mark[s]=3;?break;
??????????????????case?4:?h[i].c[j].mark[s]=2;?break;
??????????????????case?5:?h[i].c[j].mark[s]=1;?break;
?????????????????}
?????????????????h[i].score=h[i].score+h[i].c[j].mark[s];?//按取前三名還是取前五名分別記分
?????????????????if(j<=m-1)
?????????????????????h[i].mscore=h[i].mscore+h[i].c[j].mark[s];//是男子項(xiàng)目(取前三名)則記到男子分?jǐn)?shù)里面去
?????????????????else
?????????????????????h[i].wscore=h[i].wscore+h[i].c[j].mark[s];//是女子項(xiàng)目(取前五名)則記到女子項(xiàng)目里面去
}
????printf(“\n“);
????????}
????}
for(i=0;i {
printf(“\n\n*****學(xué)校編號(hào):%d“h[i].schoolnum);
for(j=0;j {
printf
評(píng)論
共有 條評(píng)論