課內設計任務一:
1.設計題目:運動會分數統計
2.任務:參加運動會有n個學校,學校編號為1……n。
比賽分成m個男子專案,和w個女子專案。專案編號為男子1~m,女子m+1~m+w。不同的專案取前五名或前三名積分;取前五名的積分分別為:
7、5、3、2、1,前三名的積分分別為:5、3、2;哪些專案取前五名或前三名由學生自己設定。(m<=20,n<=20)
3.功能要求:
1) 可以輸入各個專案的前三名或前五名的成績;
2) 能統計各學校總分;
3) 可以按學校編號、學校總分、男女團體總分排序輸出;
4) 可以按學校編號查詢學校某個專案的情況;
5) 可以按專案編號查詢取得前三或前五名的學校。
需求分析:
本程式需要建立兩個個線性表,乙個計運動專案,乙個計學校,專案資訊中記錄了前幾名,通過遍歷專案表可以統計出每個學校的成績,統計出成績記錄在學校陣列中,最後算出男子,女子和總體的總分,並以此排序。
概要設計:
typedef struct school
school, * school_list;
typedef struct sport
sport, * sport_list;
school_list scl;
sport_list spl;
詳細設計:
# include
#include
#include
#include
typedef struct school
school, * school_list;
typedef struct sport
sport, * sport_list;
//統計每個學校的分數
void count_score(int m, int n, int w, school_list scl,sport_list spl)
//統計男子專案
for(i=0;i
else
}//女子專案
for(i=m;i
else
}}//初始化所有資料
void init(int *m, int *n, int *w,school_list *scl,sport_list *spl)
while(m < 1 || m >20)
while(w < 1 || w >20)
*m = m;
*n = n;
*w = w;
//分配空間
*scl = (school*)malloc(n * sizeof(school));
*spl = (sport*)malloc((m+w) * sizeof(sport));
//初始化專案學校基本資訊
school_list sh_l = *scl;
sport_list sp_l = *spl;
int i = 0;
printf("請依次輸入%d個學校名稱:\n",n);
for(i;i
printf("請依次輸入%d個男子專案:\n",m);
for(i=0;i
printf("請依次輸入%d個女子專案:\n",w);
for(i=m;i
//初始化專案成績
printf("請依次輸入%d個專案的積分型別與成績:\n",w+m);
for(i=0;i
if(sp_l[i].category == 1)
{printf("請順序輸入%s的前五名所屬學校(1-%d):",sp_l[i].name,n);
fflush(stdin);
scanf("%d%d%d%d%d",&(sp_l[i].winner[0]),&(sp_l[i].winner[1]),&(sp_l[i].
winner[2]),&(sp_l[i].winner[3]),&(sp_l[i].winner[4]));
int j = 0;
for(j;j<5;j++)
資料結構課程設計報告書
南通大學計算機學院 題目 2.3表示式求值問題 專業 電腦科學與技術 開始日期 2013.01.14 完成日期 2012.01.16 表示式是資料運算的基本形式。人們的書寫習慣是中綴式,如 11 22 7 4 3。中綴式的計算按運算子的優先順序及括號優先的原則,相同級別從左到右進行計算。表示式還有字...
資料結構課程設計報告
交通諮詢系統設計 不用輸入程式語句,也不用那個截圖 不用太著急,報告周五之前給我就行了 列印和壓縮包都要哈!對了,這段文字記得刪掉啊嘿嘿 題目名稱交通諮詢系統設計 院 系 管理學院 課程名稱資料結構課程設計 班級資訊 10 2 學生姓名呂德麗 指導教師李長雲 目錄一 需求分析及選題要求 3 1 問題...
資料結構課程設計報告
課程設計報告 課程名稱資料結構 課題名稱生死者遊戲 專業資訊管理與資訊系統 班級學號 姓名指導教師 2011 年 1 月 20 日 湖南工程學院 課程設計任務書 課程名稱資料結構 課題生死者遊戲 專業班級 學生姓名 學號指導老師 審批任務書下達日期 2011 年 1 月 3 日 任務完成日期 201...