版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
C語言程序設(shè)計-學(xué)生成績管理系統(tǒng)設(shè)計C語言程序設(shè)計-學(xué)生成績管理系統(tǒng)設(shè)計C語言程序設(shè)計-學(xué)生成績管理系統(tǒng)設(shè)計資料僅供參考文件編號:2022年4月C語言程序設(shè)計-學(xué)生成績管理系統(tǒng)設(shè)計版本號:A修改號:1頁次:1.0審核:批準(zhǔn):發(fā)布日期:分?jǐn)?shù):97分?jǐn)?shù):97課程設(shè)計成果報告題目:學(xué)生成績管理系統(tǒng)設(shè)計課程:程序設(shè)計基礎(chǔ)目錄1設(shè)計目的 12設(shè)計任務(wù)內(nèi)容 13系統(tǒng)總體設(shè)計 24系統(tǒng)詳細(xì)設(shè)計 2輸入學(xué)生信息 2輸出學(xué)生信息 3刪除學(xué)生信息 4查詢學(xué)生信息 5根據(jù)姓名查詢 5根據(jù)學(xué)號查詢 6插入學(xué)生信息 7學(xué)生信息排序 9主函數(shù) 105調(diào)試與測試 116課程設(shè)計心得與體會 147參考文獻(xiàn) 158附錄 151設(shè)計目的本課程設(shè)計是信息管理與信息系統(tǒng)專業(yè)重要的實踐性環(huán)節(jié)之一,是在學(xué)生學(xué)習(xí)完《程序設(shè)計基礎(chǔ)》課程后進(jìn)行的一次全面的綜合練習(xí)。本課程設(shè)計的目的和任務(wù):1、鞏固和加深學(xué)生對C語言課程的基本知識的理解和掌握;2、掌握C語言編程和程序調(diào)試的基本技能;3、利用C語言進(jìn)行基本的軟件設(shè)計;4、掌握書寫程序設(shè)計說明文檔的能力;5、提高運用C語言解決實際問題的能力。2設(shè)計任務(wù)內(nèi)容學(xué)生成績管理系統(tǒng)設(shè)計學(xué)生成績相關(guān)信息包括:學(xué)號、姓名、班級、數(shù)學(xué)成績、英語成績、計算機(jī)成績等(學(xué)號唯一),總成績。系統(tǒng)要求實現(xiàn)如下功能:1)系統(tǒng)功能以菜單方式工作;2)數(shù)據(jù)的添加:從鍵盤輸入數(shù)據(jù)存放到結(jié)構(gòu)體數(shù)組中;3)數(shù)據(jù)的插入:從指定位置插入一條記錄;4)數(shù)據(jù)的輸出:在屏幕上顯示出所添加的數(shù)據(jù);5)數(shù)據(jù)的刪除:從指定位置刪除一條記錄;6)數(shù)據(jù)的查找,通常以兩種方式進(jìn)行查找,如姓名、記錄號(或?qū)W號、職工號等);7)數(shù)據(jù)的排序;8)退出系統(tǒng)。以上每個內(nèi)容需要通過單獨的函數(shù)來實現(xiàn),數(shù)據(jù)以結(jié)構(gòu)體數(shù)組的形式組織。3系統(tǒng)總體設(shè)計學(xué)生成績學(xué)生成績管理系統(tǒng)輸入學(xué)生信息輸出學(xué)生信息查詢學(xué)生信息根據(jù)姓名查詢根據(jù)學(xué)號查詢刪除學(xué)生信息插入學(xué)生信息學(xué)生信息排序4系統(tǒng)詳細(xì)設(shè)計本系統(tǒng)用來儲存多名學(xué)生的信息,并對信息進(jìn)行相關(guān)的處理,使用結(jié)構(gòu)體實現(xiàn)相關(guān)功能。結(jié)構(gòu)體代碼如下:typedefstructo); printf("輸入學(xué)生姓名:"); scanf("%s",stu[n].name); printf("輸入學(xué)生班級:"); scanf("%s",stu[n].Class); printf("輸入學(xué)生的數(shù)學(xué)成績:"); scanf("%d",&stu[n].math); printf("輸入學(xué)生的英語成績:"); scanf("%d",&stu[n].english); printf("輸入學(xué)生的計算機(jī)成績:"); scanf("%d",&stu[n]puter); stu[n].all=stu[n].math+stu[n].english+stu[n]puter;o,stu[i].name,stu[i].Class,stu[i].math,stu[i].english,stu[i]puter,stu[i].all); printf("\n"); }ame,x)!=0&&i<n) i++;o,stu[j+1].no); strcpy(stu[j].name,stu[j+1].name); strcpy(stu[j].Class,stu[j+1].Class);ath=stu[j+1].math; stu[j].english=stu[j+1].english; stu[j]puter=stu[j+1]puter; stu[j].all=stu[j+1].all; }ame,s)!=0&&i<n) i++;o,stu[i].name,stu[i].Class,stu[i].math,stu[i].english,stu[i]puter,stu[i].all); printf("\n");}o,s)!=0&&i<n) i++;o,stu[i].name,stu[i].Class,stu[i].math,stu[i].english,stu[i]puter,stu[i].all); printf("\n");}o); printf("輸入學(xué)生姓名:"); scanf("%s",stu[n].name); printf("輸入學(xué)生班級:"); scanf("%s",stu[n].Class); printf("輸入學(xué)生的數(shù)學(xué)成績:"); scanf("%d",&stu[n].math); printf("輸入學(xué)生的英語成績:"); scanf("%d",&stu[n].english); printf("輸入學(xué)生的計算機(jī)成績:"); scanf("%d",&stu[n]puter); stu[n].all=stu[n].math+stu[n].english+stu[n]puter; printf("學(xué)生信息輸入成功!\n"); }o,stu[j].no); strcpy(stu[j+1].name,stu[j].name); strcpy(stu[j+1].Class,stu[j].Class); stu[j+1].math=stu[j].math; stu[j+1].english=stu[j].english; stu[j+1]puter=stu[j]puter; stu[j+1].all=stu[j].all; }o); printf("輸入學(xué)生姓名:"); scanf("%s",stu[i].name); printf("輸入學(xué)生班級:"); scanf("%s",stu[i].Class); printf("輸入學(xué)生的數(shù)學(xué)成績:"); scanf("%d",&stu[i].math); printf("輸入學(xué)生的英語成績:"); scanf("%d",&stu[i].english); printf("輸入學(xué)生的計算機(jī)成績:"); scanf("%d",&stu[i]puter); stu[i].all=stu[i].math+stu[i].english+stu[i]puter; printf("學(xué)生信息輸入成功!\n"); }.\n"); for(i=0;i<n-1;i++) for(j=0;j<n-1-i;j++)o,stu[j+1].no)>0) {o); strcpy(stu[j].no,stu[j+1].no); strcpy(stu[j+1].no,t);o與stu[j+1].no交換。 strcpy(x,stu[j].name); strcpy(stu[j].name,stu[j+1].name); strcpy(stu[j+1].name,x); strcpy(w,stu[j].Class); strcpy(stu[j].Class,stu[j+1].Class); strcpy(stu[j+1].Class,w); y=stu[j].math; stu[j].math=stu[j+1].math; stu[j+1].math=y; p=stu[j].english; stu[j].english=stu[j+1].english; stu[j+1].english=p; q=stu[j]puter; stu[j]puter=stu[j+1]puter; stu[j+1]puter=q; r=stu[j].all; stu[j].all=stu[j+1].all; stu[j+1].all=r; }輸入學(xué)生信息\n"); printf("\t\t2.輸出學(xué)生信息\n"); printf("\t\t3.查詢學(xué)生信息\n"); printf("\t\t4.刪除學(xué)生信息\n"); printf("\t\t5.插入學(xué)生信息\n"); printf("\t\t6.學(xué)生信息排序\n"); printf("\t\t0.退出系統(tǒng)\n\n"); printf("\t請選擇:"); scanf("%d",&c); }while(c<0||c>6);o); printf("輸入學(xué)生姓名:"); scanf("%s",stu[n].name); printf("輸入學(xué)生班級:"); scanf("%s",stu[n].Class); printf("輸入學(xué)生的數(shù)學(xué)成績:"); scanf("%d",&stu[n].math); printf("輸入學(xué)生的英語成績:"); scanf("%d",&stu[n].english); printf("輸入學(xué)生的計算機(jī)成績:"); scanf("%d",&stu[n]puter); stu[n].all=stu[n].math+stu[n].english+stu[n]puter; gets(x); printf("輸入下一個(Y/N)\n"); scanf("%c",&k); n++; }}voidOutput()o,stu[i].name,stu[i].Class,stu[i].math,stu[i].english,stu[i]puter,stu[i].all); printf("\n"); }}voidDelete()ame,x)!=0&&i<n) i++; if(i==n) { printf("未找到相關(guān)學(xué)生信息!\n"); } for(j=i;j<n-1;j++) { strcpy(stu[j].no,stu[j+1].no); strcpy(stu[j].name,stu[j+1].name); strcpy(stu[j].Class,stu[j+1].Class); stu[j].math=stu[j+1].math; stu[j].english=stu[j+1].english; stu[j]puter=stu[j+1]puter; stu[j].all=stu[j+1].all; } n--;printf("該學(xué)生信息已刪除!\n");}voidFindname()ame,s)!=0&&i<n) i++; if(i==n) { printf("未找到相關(guān)學(xué)生信息!\n"); } printf("\n"); printf("學(xué)號姓名班級數(shù)學(xué)英語計算機(jī)總成績\n"); printf("\n"); printf("%-10s%-10s%-10s%-10d%-10d%-10d%-10d\n",stu[i].no,stu[i].name,stu[i].Class,stu[i].math,stu[i].english,stu[i]puter,stu[i].all); printf("\n");}voidFindno()o,s)!=0&&i<n) i++; if(i==n) { printf("未找到相關(guān)學(xué)生信息!\n"); } printf("\n"); printf("學(xué)號姓名班級數(shù)學(xué)英語計算機(jī)總成績\n"); printf("\n"); printf("%-10s%-10s%-10s%-10d%-10d%-10d%-10d\n",stu[i].no,stu[i].name,stu[i].Class,stu[i].math,stu[i].english,stu[i]puter,stu[i].all); printf("\n");}voidInsert()o); printf("輸入學(xué)生姓名:"); scanf("%s",stu[n].name); printf("輸入學(xué)生班級:"); scanf("%s",stu[n].Class); printf("輸入學(xué)生的數(shù)學(xué)成績:"); scanf("%d",&stu[n].math); printf("輸入學(xué)生的英語成績:"); scanf("%d",&stu[n].english); printf("輸入學(xué)生的計算機(jī)成績:"); scanf("%d",&stu[n]puter); stu[n].all=stu[n].math+stu[n].english+stu[n]puter; printf("學(xué)生信息輸入成功!\n"); } else { for(j=n-1;j>=i;j--) { strcpy(stu[j+1].no,stu[j].no); strcpy(stu[j+1].name,stu[j].name); strcpy(stu[j+1].Class,stu[j].Class); stu[j+1].math=stu[j].math; stu[j+1].english=stu[j].english; stu[j+1]puter=stu[j]puter; stu[j+1].all=stu[j].all; } printf("輸入學(xué)生學(xué)號:"); scanf("%s",stu[i].no); printf("輸入學(xué)生姓名:"); scanf("%s",stu[i].name); printf("輸入學(xué)生班級:"); scanf("%s",stu[i].Class); printf("輸入學(xué)生的數(shù)學(xué)成績:"); scanf("%d",&stu[i].math); printf("輸入學(xué)生的英語成績:"); scanf("%d",&stu[i].english); printf("輸入學(xué)生的計算機(jī)成績:"); scanf("%d",&stu[i]puter); stu[i].all=stu[i].math+stu[i].english+stu[i]puter; printf("學(xué)生信息輸入成功!\n"); } n++;}voidRank().\n"); for(i
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024貨物進(jìn)口合同(范本)
- 2024年廣西路分公司一級干線運輸合同
- 2024年度數(shù)據(jù)處理與分析合作協(xié)議
- 2024個人房產(chǎn)抵押合同
- 2024年基因治療技術(shù)開發(fā)合同
- 2024年度智能醫(yī)療系統(tǒng)開發(fā)合同
- 2024年度建筑施工安全環(huán)保技術(shù)創(chuàng)新與應(yīng)用合同
- 2024年廢料交易合同標(biāo)準(zhǔn)版
- 2024年建筑基坑鉆探檢測合同
- 2024年度F公司太陽能發(fā)電設(shè)備安裝合同
- 第四講夏商周考古
- 微機(jī)原理與接口技術(shù)8259A練習(xí)題及答案
- 正方體的11種展開圖
- 第15章《分式》教材分析課件(32張)
- 商鋪裝修工程施工方案.
- 西門子RWD68說明書
- 形式發(fā)票樣本(Proforma Invoice)
- 醫(yī)院車輛加油卡管理制度
- 數(shù)獨題目高級50題(后附答案)【最新】
- 問題線索辦理呈批表
- 學(xué)、練、評一體化課堂模式下賽的兩個問題與對策
評論
0/150
提交評論