高階專案8 1學生成績1

2021-07-15 19:33:05 字數 1723 閱讀 6743

任務和**:使用相同的結構體型別,在main函式中已經對結構體陣列進行了初始化,請完成相關函式的定義,實現main函式中要求的功能。

/*

檔名:main.c

完成日期:2016.7.29

程式輸出:

*/#include struct student

;void calculate(struct student s,int n); //計算總分和均分,資料在s陣列中,共有n個元素

void sort1(struct student s,int n); //按總分降序排序

void sort2(struct student s,int n); //按學號公升序排序

void output(struct student s,int n); //輸出成績單

void outputexcellent(struct student s,int n); //輸出優秀者:總分超285,單科不低於90

int main()

, ,,,

,,,,

,,};int stunum=sizeof(stu)/sizeof(stu[0]); //用sizeof運算確定陣列中元素個數

//計算總分和均分後輸出

calculate(stu,stunum);

printf("下面是成績單:\n");

output(stu,stunum);

printf("優秀者名單:\n");

outputexcellent(stu,stunum);

//按總分降序排序後輸出

sort1(stu,stunum);

printf("按總分降序排序後:\n");

output(stu,stunum);

//按學號公升序排序後輸出

sort2(stu,stunum);

printf("按學號公升序排序後:\n");

output(stu,stunum);

return 0;

}//計算總分和均分,資料在s陣列中,共有n個元素

void calculate(struct student s,int n)

}void output(struct student s,int n)

} //輸出優秀者:總分超285,單科不低於90

void outputexcellent(struct student s,int n)

else if(s[i].math < 90)

else if(s[i].english < 90)

else if(s[i].grade < 285)

else

}}//按總分降序排序

void sort1(struct student s,int n)}}

}//按學號公升序排序

void sort2(struct student s,int n)

}temp = s[k].grade;

s[k].grade = s[i].grade;

s[i].grade = temp;}}

程式執行結果:

專案1 學生成績統計

corpyright c 2013,煙台大學計算機學院 all right reseved.完成日期 2014年3月4日 版本號 v1.0 輸入描述 問題描述 專案1 學生成績統計 程式輸出 問題分析 演算法設計 include include using namespace std struct ...

高階專案8 2學生成績統計

任務和 5 score.txt中是一些同學的學號 姓名 c 高數 英語成績,利用前面定義的結構體陣列,讀取檔案score.txt中的資料,完成下面的應用 從檔案中讀出資料,存放到結構體陣列中 求出每名同學的總分 可以在讀入過程中 順便 計算 輸出結構體陣列中所有同學的記錄 按總分排序 降序 輸出排序...

第15 16章專案1 學生成績管理系統

問題及其要求 例項 include include include struct student int choosemenu 選擇選單 void readdate struct student 讀入資料 void sort1 struct student int 按總分降序排序 void outp...