版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、佛山科學(xué)技術(shù)學(xué)院實驗報告實驗名稱小型學(xué)生信息管理系統(tǒng)實驗項目編寫一學(xué)生信息管理系統(tǒng),用來管理學(xué)生基本信息及成績信息專業(yè)班級 姓名XXX 學(xué)號指導(dǎo)教師 成績 日期1、 試驗?zāi)康谋緦嶒灋閷W(xué)生提供了一個既動手又動腦,上機(jī)實踐的機(jī)會。學(xué)生通過分析和解決 該實驗,將課本上的理論知識和實際有機(jī)地結(jié)合起來,鍛煉學(xué)生分析、解決較復(fù)雜問 題的能力,提高學(xué)生編寫綜合系統(tǒng)程序的能力。2、 實驗內(nèi)容編寫一個學(xué)生信息管理系統(tǒng),主要用來管理學(xué)生基本信息及成績信息。系統(tǒng)功能模塊如下圖:排序 查詢 統(tǒng)計I具體要求為:1 .建立學(xué)生信息,每個學(xué)生的信息應(yīng)包括:學(xué)號、姓名、性別、班級、至少 3門課程的成績;2 .數(shù)據(jù)輸入:輸入學(xué)
2、生的各項信息;3 .數(shù)據(jù)修改:根據(jù)輸入學(xué)生的學(xué)號可以選擇修改該學(xué)生的信息;4 .數(shù)據(jù)處理:可以選擇處理方式為:排序、查詢、統(tǒng)計。其中:a)排序:按學(xué)號排序b)查詢:根據(jù)學(xué)號查詢成績c)統(tǒng)計:可以選擇統(tǒng)計各學(xué)生的平均成績或統(tǒng)計所有存在不及格科目的學(xué)生;5 .數(shù)據(jù)輸出:輸出學(xué)生的相應(yīng)結(jié)果信息;6 .退出:退出整個學(xué)生信息管理系統(tǒng)。7 .輸出結(jié)果截屏的第一條記錄一定要反映出你自己的真實信息。3、 程序組織結(jié)構(gòu)圖、函數(shù)調(diào)用關(guān)系圖四、程序清單#include<>#include<>#include<>struct studentchar num10;char name
3、10;char sex4;char clas20;int yw,sx,yy;float ave;stu100;int i,j;void InputData()char x;while(1)printf("t 學(xué)號:");scanf("%s",stui.num);printf("t姓名:");scanf("%s",);printf("t性別:");scanf("%s",stui.sex);printf("t班級:");scanf("
4、;%s",stui.clas);printf("t語文:");scanf("%d”,&stui.yw);printf("t數(shù)學(xué):");scanf("%d”,&stui.sx);printf("t英語:");scanf("%d”,&stui.yy);stui.ave=float(stui.yw+stui.sx+stui.yy)/;i+;printf("t是否繼續(xù)輸入數(shù)據(jù)");cin>>x;if(x='n'|x='N
5、39;) break;void EditData()int count=0;char str10;printf("n請輸入學(xué)生學(xué)號:”);cin>>str;while (count<i)if(strcmp(str,stucount.num)=0)printf(" 學(xué)號 姓名性別 班級語文數(shù)學(xué)英語n");printf("-'n");printf("%-11s",stucount.num);printf("%-13s",);printf("%-8s
6、",stucount.sex);printf("%-16s",stucount.clas);printf("%-6d",stucount.yw);printf("%-6d",stucount.sx);printf("%-4d",stucount.yy);printf("n");printf("-'n");break;count+;if(count>=i)printf("n查無此人");elsen");printf(&quo
7、t;nt修改數(shù)據(jù):printf("t學(xué)號:");scanf("%s",stui.num);printf("t姓名:");scanf("%s",);printf("t性別:");scanf("%s",stui.sex);printf("t班級:");scanf("%s",stui.clas);printf("t語文:");scanf("%d”,&stui.yw);printf(&qu
8、ot;t數(shù)學(xué):");scanf("%d”,&stui.sx);printf("t英語:");scanf("%d”,&stui.yy);stucount.ave=float(stucount.yw+stucount.sx+stucount.yy)/;void sx()struct student temp;int a,b,c;for(a=0;a<i-1;a+)c=a;for(b=a+1;b<i;b+)if(stub.ave>stuc.ave)c=b;temp=stub;stub=stuc;stuc=temp;英語
9、printf("排序后結(jié)果為:n");printf(" 學(xué)號 姓名性別 班級語文數(shù)學(xué)n");printf("n");for(c=0;c<i;c+)printf("%-11s",stuc.num);printf("%-13s",);printf("%-8s",stuc.sex);printf("%-16s",stuc.clas);printf("%-6d",stuc.yw);printf("%-6d&qu
10、ot;,stuc.sx);printf("%-4d",stuc.yy);printf("n"); printf(-'n");void cx()int count=0;char str10;printf("n請輸入要查詢的學(xué)生學(xué)號:");cin>>str;while (count<i)if(strcmp(str,stucount.num)=0)printf(" 學(xué)號 姓名性別 班級語文數(shù)學(xué)英語n");printf("-'n");printf("
11、%-11s",stucount.num);printf("%-13s",);printf("%-8s",stucount.sex);printf("%-16s",stucount.clas);printf("%-6d",stucount.yw);printf("n");printf("%-4d",stucount.yy);printf("n");printf("-'n");break;coun
12、t+;if(count>=i)printf("n無該學(xué)號學(xué)生");elseprintf("n");void tjpjf()int count=0;stui.ave=float(stui.yw+stui.sx+stui.yy)/;printf(學(xué)號姓名平均分n");for(j=0卜i;j+)while(count<i) for(j=0;j<i;j+) printf("%-21s",stucount.num);printf("%-21s",);printf(&quo
13、t;%",stucount.ave);count+; printf("n"); printf("n");void tjbhgrs()int j,count=0;printf("有不及格科目的學(xué)生是:n");printf(" 學(xué)號 姓名性別 班級語文數(shù)學(xué)英語 n"); printf("-'n");for(j=0卜i;j+)if(stuU.yw<60|stuj.sx<60|stuj.yy<60)printf("%-11s",stucount.n
14、um);printf("%-13s",);printf("%-8s",stucount.sex);printf("%-16s",stucount.clas);printf("%-6d",stucount.yw);printf("%-6d",stucount.sx);printf("%-4d",stucount.yy);printf("n");count+;printf("n");void tj()char x;
15、while(1)printf("t 1.統(tǒng)計平均分 2.統(tǒng)計不及格學(xué)生信息3. 返回n");printf("tn");printf("nt 請選擇具體的統(tǒng)計內(nèi)容:");cin>>x;printf("n");switch(x)(case '1':tjpjf();break;case '2':tjbhgrs();break;case '3':break;if(x='3')break;printf("n"); void Dat
16、aProc()char x;while(1)(printf("tprintf("tn");處理數(shù)據(jù)n");printf("tn");printf("tn");printf("t1.按學(xué)號排序n");printf("t2.查詢n");printf("t3.統(tǒng)計n");printf("t4.返回主菜單n");printf("t n");printf("n");printf("nt請選擇具體的
17、處理內(nèi)容:");cin>>x;printf("n");switch(x)(case '1':sx();break;case '2':cx();break;case '3':tj();break;case '4':break;if(x='4')break;printf("n");void DataOutput()(int count=0;語文數(shù)學(xué)英printf(" 學(xué)號 姓名性別 班級 語 n");-'n");whil
18、e(count<i)printf("%-11s",stucount.num);printf("%-13s",);printf("%-8s",stucount.sex);printf("%-16s",stucount.clas);printf("%-6d",stucount.yw);printf("%-6d",stucount.sx);printf("%-6d",stucount.yy);count+;printf("
19、;n");printf("-'n");void main()char x;printf("n");while(1)printf("t*n");printf("t*n");printf("t*學(xué)生信息管理系統(tǒng) *n");printf("t*n");printf("t*1.輸入數(shù)據(jù)*n");printf("t*2.修改數(shù)據(jù)*n");printf("t*3.處理數(shù)據(jù)*n");printf("t*
20、4.輸出數(shù)據(jù)*n");printf("t*5.退出*n");printf("t*n");printf("t*n");printf("nt請選擇需要進(jìn)行的操作:");cin>>x; printf("n");switch (x) case '1':InputData();break;case '2':EditData();break;case '3':DataProc();break;case '4':DataOu
21、tput();break;case '5':printf("謝謝使用! n");break;if(x='s') break;五、運行結(jié)果六、實驗總結(jié)(調(diào)試分析、體會、致謝)從這一次的綜合實驗中,我感觸很深可以這么說,為了這個實驗花費比較的功夫。就我個人來說,其實我很害怕與電腦,程序有關(guān)的東西,可能因為一直以來很少接觸電腦吧,對于相關(guān)的東西比較難理解。很認(rèn) 真去學(xué),還是感覺很吃力。每次上課或做實驗,發(fā)現(xiàn)自己在這方面很跟上大家的腳步。比 如說,我去做了題,但是不能理解,也記不住。但是,這次的綜合實驗二做起來相對之前, 我發(fā)現(xiàn)自己有了進(jìn)步。從開始著
22、手做,我就發(fā)現(xiàn)這個實驗所需要的知識在前面的實驗已經(jīng)做過了。特別是綜合實驗一。我是像做實驗一那樣去完成這個實驗的。首先把整個函數(shù)的結(jié)構(gòu),關(guān)系圖先寫出來。在把程序?qū)懗鰜頃r,先寫主函數(shù),然后把第一層函數(shù)的空函數(shù)寫出來,調(diào)試主函數(shù)與第一層的空函數(shù)。第二步就是按照主菜單的順序,把第一層函數(shù)寫出來,輸入數(shù)據(jù)的函數(shù)很快就寫好,調(diào)試也沒有任何問題。在寫修改數(shù)據(jù)的函數(shù)就沒那么容易,我參照了老師的程序,但是很奇怪,調(diào)試沒問題,可當(dāng)我輸入數(shù)據(jù)后,進(jìn)行第二的修改數(shù)據(jù)時,出現(xiàn)的數(shù)據(jù)一直是學(xué)號為1的學(xué)生的數(shù)據(jù)。我找了一天是哪的問題, 卻完全沒頭緒,然后我就求助舍友了, 舍友幫我看了很久,她也找不到。等我返回去看流程圖,才發(fā)現(xiàn)原來少了“ if(strcmp(str,stucount.num)=0) ”這條件。接下來就是處理數(shù)據(jù)的函數(shù),我個人感 覺這里,既簡單又比較難的。這個函數(shù)里面又包含里按學(xué)號排序,查詢,統(tǒng)計這三個函數(shù), 而統(tǒng)計里面又有統(tǒng)計平均分及統(tǒng)計不及格學(xué)生信息兩
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度木屋安全監(jiān)控系統(tǒng)安裝合同4篇
- 2025年蘇教版必修1歷史下冊月考試卷含答案
- 2025年蘇科版九年級歷史上冊月考試卷
- 二零二五版美容院化妝品生產(chǎn)線技術(shù)合作合同3篇
- 2025年粵教新版高三歷史下冊月考試卷含答案
- 二零二五年度農(nóng)產(chǎn)品品牌營銷策劃合同4篇
- 安徽農(nóng)民工就業(yè)指導(dǎo)與職業(yè)規(guī)劃合同范本(2025)2篇
- 二零二五年度民商法擔(dān)保合同爭議調(diào)解規(guī)則4篇
- 二零二五版美容美發(fā)行業(yè)技師職稱評定合同3篇
- 二零二五年度新型農(nóng)藥農(nóng)膜研發(fā)與應(yīng)用合作合同2篇
- 第十七章-阿法芙·I·梅勒斯的轉(zhuǎn)變理論
- 焊接機(jī)器人在汽車制造中應(yīng)用案例分析報告
- 合成生物學(xué)在生物技術(shù)中的應(yīng)用
- 中醫(yī)門診病歷
- 廣西華銀鋁業(yè)財務(wù)分析報告
- 無違法犯罪記錄證明申請表(個人)
- 大學(xué)生勞動教育PPT完整全套教學(xué)課件
- 繼電保護(hù)原理應(yīng)用及配置課件
- 《殺死一只知更鳥》讀書分享PPT
- 蓋洛普Q12解讀和實施完整版
- 2023年Web前端技術(shù)試題
評論
0/150
提交評論