


版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、C語言集中上機實習(xí)報告院系:光電工程學(xué)院班級:02111507姓名:指導(dǎo)教師:謝競博題目:學(xué)生成績管理系統(tǒng)2016年12月8日完成實驗報告的正文有七部分,分別是:?題目名稱:?設(shè)計思路:包括總體設(shè)計和每個模塊的算法?最初程序代碼:?調(diào)試過程(寫明調(diào)試過程中出現(xiàn)的所有語法錯誤和邏輯錯誤,這是評定成績的主要依據(jù))?最終程序代碼:?測試結(jié)果:(截圖)?心得體會:下面以一個簡單的題目為例:一、題目:學(xué)生成績管理系統(tǒng)二、思路:先定義學(xué)生人數(shù)和學(xué)號和學(xué)生姓名和各科成績變量,再調(diào)用函數(shù),最后再輸出,系統(tǒng)基本完善。三、最初程序代碼:#include<stdio.h>#include<stri
2、ng.h>#include<stdlib.h>#defineNUMOFSTU10/*定義學(xué)生人數(shù)*/#defineNUMOFCOURSE/*定義考試科目*/structstudent(intnumber;/*每個學(xué)生的學(xué)號*/charname10;/*每個學(xué)生的姓名*/intscoreNUMOFCOURSE;/*每個學(xué)生M門功課的成績*/floatsum;/*每個學(xué)生的總成績*/floataverage;/*每個學(xué)生的平均成績*/;typedefstructstudentSTU;voidPrintScore(STUpt,intn);voidInputStudent(STUpt
3、,intn);voidTotal(STUpt,intn);voidSort(STUpt,intn);intSearchByNumber(STUpt,intn,intnumber_to_search);intSearchByName(STUpt,intn,charname_to_search);charMenu(void);四、調(diào)試過程:出現(xiàn)的提示如下:1. 執(zhí)行cl.exe時出錯.執(zhí)行結(jié)果:經(jīng)過對整個程序的排錯,發(fā)現(xiàn)在過程中,缺少一個結(jié)束語。將輸出那行改正為:在后面添加結(jié)果正確。H:C語言學(xué)生成績管理系統(tǒng).cpp(135):errorC2143:syntaxerror:missing'
4、'before''執(zhí)行cl.exe時出錯.執(zhí)行結(jié)果:經(jīng)過排查,發(fā)現(xiàn)在if(ptj.sum>ptk.sum)k=j;(k!=i)temp=ptk;ptk=pti;白定義變量時,缺少if條件語句,結(jié)果導(dǎo)致整個白定義變量發(fā)生改變在k=j;(k!=i)前面添加if條件語句結(jié)果正確m二工二旦四L”理.-fr三目-'工日三叫心lih旦,右二工三點-巾擋1隼丁hrr三叫,土玲技土日三聞謎搔:1擊學(xué)號魚詢.卜接姓若堂詞:請逐孑:L項學(xué)查近一A按姓名查詢:清謎攔:1-按學(xué)W查詞,卜懷娃客查誼昂遠爪-拒亍E萱b.按姓名堂詢:請選擇二-按學(xué)號查詞.'博牲名魚詢:諂選擇:
5、i-按學(xué)號魚國z-按娃宅查詢:清遠件”-讀學(xué)弓查詞,蛀苦查詞:漩:1擊學(xué)號查詢,卜搜姓名暨詢:謂珥羊:A按學(xué)號查詢.2卡姓名查詢:請園¥:1-按學(xué)耳查詢,卜按坦S查,吊透擇:1也學(xué)號宣匯卜搜娃害查詢沛選擇土按學(xué)號查詞.W姓筆魚詢:i胥諺可:1-按蘋號查國按娃宅督有上青起羊:1女學(xué)弓割L卜也姓害魚詞:踵播:1御號面ikW我姓名查詢;請選I幻1裁學(xué)號查詢.Z參姓名查詢:i嶙擇;1-拽學(xué)號查齒,2搜炷名查此it選插:1冊緝查K卜按姓名查詢而選擇:椅學(xué)號查澈Hi姓名查詢部敝;1-搜半號查電2-傳蚣B查詢:il選擇:1-解號旨沏卜按姓名壹詢;腿際1成學(xué)號查詢,卜技姓名鮮J;請選譯H-按學(xué)號查詢
6、,2哦姓名查詢:臆擇;1-按半號查詢,卜按建名查詢:請選既1-按學(xué)號萱11.A按娃名置詢沛選擇二書學(xué)號管旬HS堆電瞬;請造悸;1-按學(xué)號查詢.£-按姓名查詢:i幗擇:1-撞學(xué)號查詢,卜按蛙害查詢;&選擇;1-按學(xué)號亙黃L卜鼬名董詢;諳造1*1-按學(xué)號查詢,2-按虹名菖詞;請選居;1-技半后香詢,防*中杳詢:請選擇;1-按學(xué)號亙A技妙字杏詢;請迎擇:1-按學(xué)號耆詢,卜按科百詢;請借障;1-枝學(xué)號杳詢.舍哉建名查詢:清講擇:1-痕學(xué)號商物,卜按蚌名古詢:Ht擇:1-授學(xué)號苜詞.技蚌名百向;任擔(dān)羊;L-亨學(xué)號杏胃:.按外*耆詢:請撓岸;1-接學(xué)號度詢,2按蛭名古詢:請選擇:1成學(xué)號
7、直I詢:清洗擇;按學(xué)與杏痂.、按科甘向;清琳槨;1-枝學(xué)號查詢.fft名查詢:請詢*:】g號而如枝蚌名吉荷;3.調(diào)試過劇黔1表學(xué)號查詢,日-技姓名查削法相牝L-節(jié)學(xué)號苦詢,日瀕醇查御:請選擇;1-枝學(xué)號置仇2鼬名爽詢;清逸*1戔學(xué)號查I,卜技姓名擊詢同:!擇;:-按學(xué)號逐瓦z形名童詢:請雌:1-按學(xué)號斐域按姓名查詢;清選擇;1我學(xué)號童仇卜膊害查詢:曲擇:1表學(xué)號直詢,Z*名查詢:慵娜:1-按學(xué)號亶瓦按姓名查詢:謂腳:1戔學(xué)號查詢,4按旌名直詢:清通既1成學(xué)號查I,N朝名童詢:請選攆:1表學(xué)號查詢,ZT辨名查詢:清選擇:1-技學(xué)號查詢,2-按姓名查詢;請選擇:1我學(xué)號董詢,W-技姓咨度油;i選職
8、1一按學(xué)號苣詢3-腰姓名查詢:請選擇:1-演學(xué)£直瓦N-按姓名查詢:謂選擇:1表學(xué)號查詢,4技姓名查詢滯逸*1-按學(xué)號萱I,a一挎姓名窗航說御畢::按學(xué)號皆旬心拱名查詢:請選擇;i持學(xué)號近花:.:-按姓屯督囪;清述徑:1-件號查初a-枯姓名查詢:'選擇:】損學(xué)馬直曲3-ws名查詢:請選擇:i-咀旱日,向,舛m擊查齒:清選擇:1-技學(xué)號近詢,4投蛀名查詢師選擇:書學(xué)馬言I,卜技姓巧查詢而錐帶:按學(xué)號直瓦心辨名萱詢鬲ii擇:1拄學(xué)號歸誼.吱姓空查削倩選擇:1燧耳直詢,a按姓名查詢:麓攆一1技學(xué)馬宜詢.丫按姓名查詢!請選擇:1&學(xué)號查詢,2按J1名查詢!請赤曰1技學(xué)至查詢,
9、W投拄名查誼:請選擇:1技學(xué)號萱I.卜拔姓名查詢皿芭擇二按學(xué)知虱2技姓名直詢:清i封羊:1投學(xué)號查隹I.::按姓宅苣旬:胃選鼠1-技學(xué)科查詢,W-鼬名查詢:范徑:】損學(xué)馬宜詢H按姓畝壹詢:話法哩:1哦典查豆按姓名查詢:問圣:1-控學(xué)與查詢,投蛀名查詢:請選擇小按學(xué)號宣I.2律姓呂查卸語苞捧二按學(xué)翊訊口按姓詢:尚封¥:】抿室號查詢.-瑁姓茫查虱港選擇:1-拶學(xué)號查詢"挖姓呂查卸施擇:1親學(xué)號宣詢,2壽姓名宣詢藺醇:1-按學(xué)號宣瓦2-按姓名直詢:it選擇!1瘀緝查詢,A投姓名查®請選擇:H學(xué)號亶I.卜投姓名匿詢,請近險-按學(xué)翊詢、£賣蛙右童詢:諸造擇:1-投
10、學(xué)號查詢,按姓主查詢:請選擇:1步學(xué)號登詢,卜投姓名查詢:施擇:賣學(xué)號登詞,2和普查詢:請途羊:I-關(guān)學(xué)號查旬一、按姓名查訕浩選擇+按學(xué)號查詢,2按炷名查詢:請選擇H哦學(xué)導(dǎo)查L2妾姓名查詢、請選擇十按寧號查詢、2寺姓名查詢湖瘁:1-按學(xué)號宣認2-按姓宅查洵:請選擇:H$學(xué)弓宣詢,卜按姓名查詢,程中,在使用按姓名查詢時,出現(xiàn)經(jīng)排查,發(fā)現(xiàn)在intSearchByNumber(STUpt,intn,intnumber_to_search)inti;for(i=0;i<n;i+)if(pti.number=number_to_search)returni;returni;返回按姓名查詢時,返回值
11、確定錯誤,誤將返回-1寫成i導(dǎo)致返回值全部為查詢方式將i改為-1之后,調(diào)試正常五、最終程序為:#include<stdio.h>#include<string.h>#include<stdlib.h>#defineNUMOFSTU10/*定義學(xué)生人數(shù)*/#defineNUMOFCOURSE2/*定義考試科目*/structstudentintnumber;/*每個學(xué)生的學(xué)號*/charname10;/*每個學(xué)生的姓名*/intscoreNUMOFCOURSE;/*每個學(xué)生M門功課的成績*/floatsum;/*每個學(xué)生的總成績*/floataverage;/
12、*每個學(xué)生的平均成績*/;typedefstructstudentSTU;voidPrintScore(STUpt,intn);voidInputStudent(STUpt,intn);voidTotal(STUpt,intn);voidSort(STUpt,intn);intSearchByNumber(STUpt,intn,intnumber_to_search);intSearchByName(STUpt,intn,charname_to_search);charMenu(void);/*函數(shù)功能:打印學(xué)生的信息,此子程序即可以打印全部學(xué)生成績的信息,也可以打印個別幾個學(xué)生的信息函數(shù)參數(shù)
13、:結(jié)構(gòu)體數(shù)組的指針pt,表示要打印的學(xué)生的起始地址整型參數(shù)n,表示要打印n個學(xué)生成績函數(shù)返回值:無*/voidPrintScore(STUpt,intn)inti,j;charstring100='0',tempNUMOFCOURSE;strcat(string,"Number");/*建立表頭*/strcat(string,"Name");for(i=1;i<=NUMOFCOURSE;i+)(strcat(string,"Score");itoa(i,temp,10);strcat(string,temp);s
14、trcat(string,"");strcat(string,"sum");strcat(string,"average");printf("%s”,string);/*打印表頭*/for(i=0;i<n;i+)(/*打印n個學(xué)生的信息*/printf("nNo.%3d%8s”,pti.number,);for(j=0;j<NUMOFCOURSE;j+)printf("%7d",pti.scorej);printf("%8.2f%8.2fn",pt
15、i.sum,pti.average);/*函數(shù)功能:從鍵盤獲得學(xué)生的信息子程序函數(shù)參數(shù):結(jié)構(gòu)體數(shù)組的指針pt,表示要輸入的學(xué)生信息頭整型變量n,表示要輸入的元素的個數(shù)函數(shù)返回值:無*/voidInputStudent(STUpt,intn)inti,j;for(i=0;i<n;i+)printf("n輸入學(xué)號:");scanf("%d”,&pti.number);printf("n輸入名字:");scanf("%s",);for(j=0;j<NUMOFCOURSE;j+)if(j)(pri
16、ntf("n輸入高數(shù)分?jǐn)?shù)score2:");else(printf("n輸入英語分?jǐn)?shù)scorel:");scanf("%d",&pti.scorej);/*函數(shù)功能:計算每個學(xué)生的M門功課的總成績和平均成績子模塊函數(shù)參數(shù):結(jié)構(gòu)體數(shù)組的指針pt,表示要輸入的學(xué)生信息頭整型變量n,表示要處理的元素的個數(shù)函數(shù)返回值:無*/voidTotal(STUpt,intn)for(i=0;i<n;i+)(pti.sum=0;for(j=0;j<NUMOFCOURSE;j+)pti.sum=pti.sum+pti.scorej;pt
17、i.average=pti.sum/NUMOFCOURSE;/*函數(shù)功能:用選擇法按總成績由高到低排序函數(shù)參數(shù):結(jié)構(gòu)體數(shù)組的指針pt,表示要輸入的學(xué)生信息頭整型變量n,表示要處理的元素的個數(shù)函數(shù)返回值:無*/voidSort(STUpt,intn)(inti,j,k;STUtemp;for(i=0;i<n-1;i+)(k=i;for(j=i;j<n;j+)if(ptj.sum>ptk.sum)k=j;if(k!=i)(temp=ptk;ptk=pti;pti=temp;/*函數(shù)功能:用順序查找法按學(xué)號查找函數(shù)參數(shù):結(jié)構(gòu)體數(shù)組首地址pt,整型變量n,表示數(shù)組長度,整型變量num
18、ber_to_search,表示要查找的學(xué)號函數(shù)返回值:如果找到學(xué)號,則返回對應(yīng)下標(biāo),否則返回-1*/intSearchByNumber(STUpt,intn,intnumber_to_search)(inti;for(i=0;i<n;i+)if(pti.number=number_to_search)returni;return-1;/*函數(shù)功能:用順序查找法按學(xué)號查找函數(shù)參數(shù):結(jié)構(gòu)體數(shù)組首地址pt,整型變量n,表示數(shù)組長度,字符數(shù)組首地址,name_to_search,用來指向要查找的姓名函數(shù)返回值:如果找到姓名,則返回對應(yīng)下標(biāo),否則返回-1*/intSearchByName(STU
19、pt,intn,charname_to_search)(inti;for(i=0;i<n;i+)if(strcmp(,name_to_search)=0)returni;return-1;/*函數(shù)功能:查找并顯示查找結(jié)果子模塊,可按姓名和學(xué)號分別查找,找到,顯示該元素的信息,如果沒查到,也有相應(yīng)的提示函數(shù)參數(shù):結(jié)構(gòu)體數(shù)組的指針pt,表示要輸入的學(xué)生信息頭整型變量n,表示要處理的元素的個數(shù)函數(shù)返回值:無*/voidFind(STUstu,intn)intnumber,k,choose;charname25;doprintf("請選擇:1-按學(xué)號查詢,2-按姓名查詢
20、:");scanf("%d”,&choose);while(!(choose=1|choose=2);if(choose=1)(printf(-請輸入學(xué)號:");scanf("%d”,&number);k=SearchByNumber(stu,n,number);else(printf(-請輸入姓名:");scanf("%s",name);k=SearchByName(stu,n,name);if(k=-1)printf("n沒有找到對應(yīng)學(xué)生,請重新輸入!n");elsePrintScor
21、e(stu+k,1);/*函數(shù)功能:菜單子模塊,顯示菜單功能并獲得鍵盤選擇函數(shù)參數(shù):無函數(shù)返回值:輸入的鍵盤ASCII碼*/charMenu(void)(printf("n1.輸入學(xué)生信息n");printf("2.列出成績總表n");printf("3.按平均分排序n");printf("4.分類查找n");printf("5.退出n");returngetchar();intmain()/*主程序*/printf("n*歡迎使用學(xué)生成績管理系統(tǒng)n");*charch;ST
22、UstuNUMOFSTU;intn;while(1)(ch=Menu();/*顯示菜單*/switch(ch)(case'1':printf("請輸入學(xué)生人數(shù):");scanf("%d”,&n);InputStudent(stu,n);/*調(diào)用輸入模塊*/Total(stu,n);break;case'2':PrintScore(stu,n);/*調(diào)用列表模塊*/break;case'3':Sort(stu,n);/*調(diào)用排序模塊*/printf("n分類結(jié)果n");PrintScore(
23、stu,n);/*顯示排序結(jié)果*/break;/*調(diào)用查找模塊*/case'4':Find(stu,n);/*退回至VDOS*/break;case'5':exit(0);break;default:break;printf("n按任意鍵返回主菜單");getchar();return0;*孕*:41+*事*寒*:+W*事*+*4£*耳*+*歡迎便用學(xué)生胥壬里系*充4:*g*:4!*:*摹耳*+:*岑*+*暮*:+4:*摹耳:*:*+*:*:*+:*入學(xué)生桔息£列出成績怠表土按平均骨排序全分類童找5一退出1請輸入學(xué)生人敵4輸入學(xué)號1曉1口螂瞞人名生:張一榆人英語分?jǐn)硍E;卯赭人高鼓分?jǐn)?shù)京”或
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 餐飲業(yè)服務(wù)培訓(xùn)試卷
- 中學(xué)生課外閱讀指南經(jīng)典情節(jié)讀后感
- 山東省濱州市2024-2025學(xué)年高一上學(xué)期1月期末生物學(xué)試題(含答案)
- 關(guān)于提升內(nèi)部溝通效率的重要會議記錄
- 初中生公民意識教育故事解讀
- 汽車汽車租賃合同
- 電商培訓(xùn)服務(wù)合同
- 新版?zhèn)€人借款合同
- 民中心安保服務(wù)合同
- 關(guān)于公司近期調(diào)整策略的背景與意義說明報告
- 2023年高考真題全國乙卷物理試卷
- 新疆省新疆生產(chǎn)建設(shè)兵團2025屆小升初數(shù)學(xué)高頻考點檢測卷含解析
- 專題46:地理意義類綜合題之產(chǎn)業(yè)集聚的意義(原卷版)-備戰(zhàn)2021屆高考地理二輪復(fù)習(xí)題型專練
- 節(jié)后復(fù)工復(fù)產(chǎn)安全教育培訓(xùn)資料
- 2025年安徽省合肥熱電集團招聘50人歷年高頻重點模擬試卷提升(共500題附帶答案詳解)
- 煤礦監(jiān)測監(jiān)控培訓(xùn)
- 柔性電路板自動化制造-深度研究
- 2024年河南建筑職業(yè)技術(shù)學(xué)院高職單招職業(yè)技能測驗歷年參考題庫(頻考版)含答案解析
- 電纜故障知識培訓(xùn)課件
- 國家開放大學(xué)本科《商務(wù)英語4》一平臺機考真題及答案(第四套)
- 交通運輸考試題及答案
評論
0/150
提交評論