




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、#include<stdio.h> #include<string.h> #include<stdlib.h> #define N 100int iNumOfStu=0;struct scorefloat math; float english; float computer;struct studentint number; char name20;struct score sco; float average;struct student stuN;void print_menu(void);/輸 出 菜 單 void choosemenu(void);
2、/ 菜單選擇void input_student1(int);/ 輸入學(xué)生信息void input_student2(void);/ 輸入總函數(shù)void input_student3(int &,int);/判斷學(xué)號(hào)是否重復(fù)void input_student4(int,int);/覆蓋原信息void sort_student3(student s,int);/ 按照英語成績排序void sort_student4(student s,int);/ 按照計(jì)算機(jī)成績排序void sort_student2(student s,int);/ 按照數(shù)學(xué)成績排序void sort_studen
3、t5(student s,int);/ 按照平均成績排序float input_score2(int);/ 計(jì)算學(xué)生平均成績void print_student2(void);/顯示表頭void print_student3(int);/ 顯示學(xué)生信息void print_student1(int);/ 顯示全部學(xué)生資料void sort_student1(void);/ 排序總函數(shù)void menu(void);/ 菜單調(diào)度總函數(shù)int search_student2(int);/ 按學(xué)號(hào)查詢學(xué)生信息并輸出void search_student3(int);/ 按平均分最高查詢并輸出void
4、 search_student1(void);/ 查詢總函數(shù)void delete_student2(int,int);/ 刪除學(xué)生信息void delete_student1(void);/ 刪除總函數(shù)void change_student2(int);/ 修改學(xué)生資料void change_student1(void);/ 修改總函數(shù)void input_score3(int);/ 統(tǒng)計(jì)成績void input_score1(void);/ 統(tǒng)計(jì)成績總函數(shù)void print_help(void);/輸出幫助信息void exit_student(void);/ 退出系統(tǒng)void save
5、_student(student *,int);/ 保存學(xué)生信息void main()menu();void save_student(student *s,int a)/ 保存學(xué)生信息FILE *fp;學(xué)生信息 .txt","wb")=NULL)printf(" 不能打開文件!n");elseprintf(" 保存信息到D 盤n");fprintf(fp," 本班所有學(xué)生具體信息如下:rn");fprintf(fp,"學(xué)號(hào)姓名數(shù)學(xué)成績英語成績計(jì)算機(jī)成績平均成績 rn");for(in
6、t i=0;i<a;i+)fprintf(fp,"%8d%12s%14.2f%14.2f%14.2f%14.2fn",stui.number,,stui.sco.math,stu i.sco.english,stuiputer,stui.average);fprintf(fp,"rn");fclose(fp);printf(" 信息保存成功!n");void exit_student(void)/ 退出系統(tǒng)exit(1);void print_help(void)/輸出幫助信息printf(" 本系統(tǒng)
7、所能容納的最大學(xué)生數(shù)為%d 人n 學(xué)生信息保存在D 盤根目錄下, 保存文件為“學(xué)生信息 .txt ”。n 感謝使用! n",N);void input_score1(void)/ 統(tǒng)計(jì)成績總函數(shù)int c; c=search_student2(iNumOfStu);printf(" 學(xué)號(hào): %dn",stuc.number); printf(" 姓名: %sn",); input_score3(c);printf(" 新成績錄入成功!n"); stuc.average=input_score2(c);voi
8、d input_score3(int a)/ 統(tǒng)計(jì)成績printf(" 數(shù)學(xué)新成績:"); scanf("%f",&stua.sco.math); printf(" 英語新成績:"); scanf("%f",&stua.sco.english); printf(" 計(jì)算機(jī)新成績:"); scanf("%f",&stuaputer);void change_student2(int a)/ 修改學(xué)生資料printf(" 學(xué)號(hào): %d- 修改為:
9、 ",stua.number); scanf("%d",&stua.number);getchar();printf(" 姓名: %s- 修改為: ",); gets();printf(" 數(shù)學(xué)成績: %.2f- 修改為: ",stua.sco.math); scanf("%f",&stua.sco.math);printf(" 英語成績: %.2f- 修改為: ",stua.sco.english);scanf("%f&q
10、uot;,&stua.sco.english);printf(" 計(jì)算機(jī)成績:%.2f- 修改為: ",stuaputer); scanf("%f",&stuaputer);void change_student1(void)/ 修改總函數(shù)int c; c=search_student2(iNumOfStu); getchar();printf(" 是否要修改此學(xué)生信息?(“ y”代表是) ");char d; scanf("%c",&d);if(d='y'|d='Y
11、')change_student2(c); stuc.average=input_score2(c); printf(" 信息修改成功!n");void delete_student1(void)/ 刪除總函數(shù)int c; c=search_student2(iNumOfStu); getchar();printf(" 是否刪除此條記錄?( “y”代表是) ");char d; scanf("%c",&d);if(d='y'|d='Y')delete_student2(c,iNumOfS
12、tu); printf(" 記錄已刪除! n");void delete_student2(int a,int b)/ 刪除學(xué)生信息for(int i=a;i<b-1;i+)stui=stui+1;-iNumOfStu;void search_student1(void)/ 查詢總函數(shù)printf("1 、按學(xué)號(hào)查詢n2、按平均分最高查詢n 請選擇: "); int c;scanf("%d",&c); switch(c)case 1:search_student2(iNumOfStu); break;case 2:sea
13、rch_student3(iNumOfStu); break;default: break;void menu(void)/ 菜單調(diào)度總函數(shù)print_menu(); choosemenu();void sort_student1(void)/ 排序總函數(shù)printf("1 、按數(shù)學(xué)成績排序n2、按英語成績排序n3、按計(jì)算機(jī)成績排序n4、按平均成績排序 n 請選擇: ");int c; scanf("%d",&c); switch(c)case 1:sort_student2(stu,iNumOfStu); break;case 2:sort_s
14、tudent3(stu,iNumOfStu); break;case 3:sort_student4(stu,iNumOfStu); break;case 4:sort_student5(stu,iNumOfStu); break;default: break;void print_student1(int a)/ 顯示全部學(xué)生資料printf(" 本班所有學(xué)生具體信息如下n"); print_student2();for(int i=0;i<a;i+)print_student3(i);void print_student3(int a)/ 顯示學(xué)生信息printf
15、("%8d%12s%14.2f%14.2f%14.2f%14.2fn",stua.number,,stua.sco.math,stua.sco.english,stuaputer,stua.average);void print_student2(void)/顯示表頭printf("學(xué)號(hào)姓名數(shù)學(xué)成績英語成績計(jì)算機(jī)成績平均成績 n");void input_student4(int a,int b)/ 覆蓋原信息stua=stub-1;-iNumOfStu;void input_student3(int &a,int b)/判斷學(xué)
16、號(hào)是否重復(fù)if(a!=0)int i=0; doif(stua.number=stui.number)printf(" 此學(xué)號(hào)代表的學(xué)生已錄入n1、覆蓋原信息 n2、重新輸入 n 請選擇: "); int c;scanf("%d",&c); switch(c)case 1:input_student4(i,iNumOfStu); a=iNumOfStu-1;printf(" 信息已替換! n"); break;case 2:printf(" 請重新輸入學(xué)生信息:n"); input_student1(iNu
17、mOfStu-1);break;default: break;break;+i;while(i<b-1);void print_menu(void)/ 輸出菜單printf("=歡迎來到學(xué)生信息管理系統(tǒng)=n"); printf("1、輸入學(xué)生資料n");printf("2、刪除學(xué)生資料n");printf("3、查詢學(xué)生資料n");printf("4、修改學(xué)生資料n");printf("5、顯示學(xué)生資料n");printf("6、統(tǒng)計(jì)學(xué)生成績n");
18、printf("7、排序?qū)W生成績n");printf("8、保存學(xué)生資料n");printf("9、獲取幫助信息n");printf("10 、 退 出 系 統(tǒng) n"); printf("=n");printf(" 請選擇: ");void input_student2(void)/ 輸入總函數(shù)char end;printf(" 請輸入學(xué)生信息(在最后一個(gè)學(xué)生信息錄入完成后以“/”結(jié)束錄入) : n"); for(int i=0;(end=getchar(
19、)!='/'i+)input_student1(i);+iNumOfStu; input_student3(i,iNumOfStu);for(int j=0;j<iNumOfStu;j+)stuj.average=input_score2(j);void input_student1(int a)/ 輸入學(xué)生信息printf(" 學(xué) 號(hào) : "); scanf("%d",&stua.number); getchar();printf(" 姓名: ");gets();printf(&quo
20、t; 數(shù) 學(xué) 成 績 : "); scanf("%f",&stua.sco.math); printf(" 英 語 成 績 : "); scanf("%f",&stua.sco.english); printf(" 計(jì)算機(jī)成績:"); scanf("%f",&stuaputer);float input_score2(int a)/ 計(jì)算學(xué)生平均成績r(jià)eturn (stua.sco.math+stua.sco.english+stuaputer)/3;void
21、search_student3(int a)/ 按平均分最高查詢并輸出int max=0;for(int i=0;i<a;i+)if(stumax.average<stui.average)max=i;print_student2(); print_student3(max);void sort_student2(student s,int a)/ 按照數(shù)學(xué)成績排序struct student temp; for(int i=0;i<a-1;i+)int max=i;for(int j=i+1;j<a;j+) if(stuj.sco.math>stumax.sco
22、.math)max=j;if(max!=i)temp=stumax; stumax=stui; stui=temp;print_student2();for(int k=0;k<a;k+)print_student3(k);void sort_student3(student s,int a)/ 按照英語成績排序struct student temp; for(int i=0;i<a-1;i+)int max=i;for(int j=i+1;j<a;j+) if(stuj.sco.english>stumax.sco.english)max=j;if(max!=i)te
23、mp=stumax; stumax=stui; stui=temp;print_student2(); for(int k=0;k<a;k+)print_student3(k);void sort_student4(student s,int a)/ 按照計(jì)算機(jī)成績排序struct student temp; for(int i=0;i<a-1;i+)int max=i;for(int j=i+1;j<a;j+) if(stujputer>stumaxputer)max=j;if(max!=i)temp=stumax; stumax=stui;stui=temp;pri
24、nt_student2(); for(int k=0;k<a;k+)print_student3(k);void sort_student5(student s,int a)/ 按照平均成績排序struct student temp; for(int i=0;i<a-1;i+)int max=i;for(int j=i+1;j<a;j+) if(stuj.average>stumax.average)max=j;if(max!=i)temp=stumax; stumax=stui; stui=temp;print_student2(); for(int k=0;k<
25、;a;k+)print_student3(k);int search_student2(int a)/ 按照學(xué)號(hào)查找學(xué)生并輸出int num; int c;printf(" 請輸入要查詢的學(xué)號(hào):");scanf("%d",&num); for(int i=0;i<a;i+)if(num=stui.number)c=i;printf(" 此學(xué)生的信息是:n"); print_student2(); print_student3(c);return c;void choosemenu(void)/ 菜單選擇int i; scanf("%d",&i); switch(i)case 1:input_student2();printf(" 按回車鍵返回主菜單"); getchar();getchar(); menu();
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 市政疏水管施工方案
- 公路平交施工方案
- 廠房石漆施工方案
- 河道駁坎施工方案
- 2025年度標(biāo)準(zhǔn)勞動(dòng)關(guān)系解除與離職員工再就業(yè)服務(wù)協(xié)議
- 二零二五年度山場租賃承包與旅游開發(fā)協(xié)議
- 二零二五年度互聯(lián)網(wǎng)農(nóng)業(yè)合作入股協(xié)議
- 2025年度集體勞動(dòng)合同到期續(xù)簽?zāi)0鍏f(xié)議
- 二零二五年度環(huán)境保護(hù)合作協(xié)議簽訂與審批流程
- 2025年度門面房租賃與商業(yè)形象設(shè)計(jì)合同
- 《農(nóng)民專業(yè)合作社登記管理?xiàng)l例》條文解讀(一
- 一年級的小豌豆我喜歡的一本書(課堂PPT)
- 電廠機(jī)組深度調(diào)峰摸底試驗(yàn)方案
- 地球上的大氣知識(shí)結(jié)構(gòu)圖
- 線束加工工時(shí)對照表
- 一年級古詩新唱社團(tuán)計(jì)劃
- 新加坡SM1向性測試模擬試卷
- 美國小企業(yè)投資公司計(jì)劃(SBIC)
- 中考數(shù)學(xué)復(fù)習(xí)經(jīng)驗(yàn)交流PPT課件
- 商務(wù)演示模版
- 美國簽證在職證明中英文模板.doc
評論
0/150
提交評論