《程序設計語言》課程設計-學生信息管理系統(tǒng).doc

上傳人:good****022 文檔編號:116540111 上傳時間:2022-07-05 格式:DOC 頁數(shù):18 大?。?83.50KB
收藏 版權(quán)申訴 舉報 下載
《程序設計語言》課程設計-學生信息管理系統(tǒng).doc_第1頁
第1頁 / 共18頁
《程序設計語言》課程設計-學生信息管理系統(tǒng).doc_第2頁
第2頁 / 共18頁
《程序設計語言》課程設計-學生信息管理系統(tǒng).doc_第3頁
第3頁 / 共18頁

下載文檔到電腦,查找使用更方便

20 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《《程序設計語言》課程設計-學生信息管理系統(tǒng).doc》由會員分享,可在線閱讀,更多相關(guān)《《程序設計語言》課程設計-學生信息管理系統(tǒng).doc(18頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、 程序設計語言課程設計 學生信息管理系統(tǒng) 系 、 部: 計算機與信息科學系 專 業(yè): 信息與計算科學 班 級: 信本1003班 姓 名: 學 號: 學生信息管理系統(tǒng)1、設計目的本課程設計為學生提供了一個既動手又動腦,自學,查資料,獨立實踐的機會。將本學期課本上的理論知識和實際有機的結(jié)合起來,鍛煉學生實際分析問題和解決問題的能力,提高學生適應實際、實踐編程的能力,使對C+系統(tǒng)編程有一個大致的了解2、 總體設計(程序設計組成框圖、流程圖)a、學生成績的錄入、統(tǒng)計、查詢(可根據(jù)名字首字母查詢)、修改、刪除、輸出。 畫出功能結(jié)構(gòu)圖。3、 詳細設計(模塊功能說明(如函數(shù)功能、入口及出口參數(shù)說明,函數(shù)調(diào)用

2、關(guān)系描述等)函數(shù)、部分程序及其說明:int id;/學號char name20;/姓名int age;/年齡char sex;/姓別int score3;/成績(t語文t數(shù)學t英語)char address50;/地址char birthday20; /出生年月char telephone15;/電話char email50;/E-mailint avg;/平均成績char name120;/登錄用戶名char mima17;/登錄密碼struct student stus50;/全局學生結(jié)構(gòu)體數(shù)組int count = 0;/統(tǒng)計學生個數(shù) name=yinzhaoxia;/登錄名char m

3、ima=123456 ;/密碼Main():此函數(shù)主要是調(diào)用錄入、統(tǒng)計等函數(shù)對成績表進行處理;通過使用switch函數(shù)判斷用戶所選擇的序號,再進入相應的函數(shù)。insertStudent();/添加學生信息selectAllStudent():查詢所有學生信息AaXingMingChaXunStudent();/姓名首字母查詢AaXueHaoChaUunStudent();/根據(jù)學號查找AaXingMingChaUunStudent();/根據(jù)姓名查找XiuGaiStudent();/修改學生信息AnXueHaoPaiXuStudent();/根據(jù)按學號排序AnXingMingShoZiMuPa

4、iXunStudent();/按姓名首字母排序AnChengjPaiXuStudent();/按成績排序XunZePaiXu(); /選擇排序方式ShanChuStudent();/刪除學生信息ShanChuStudent1(int len,int index);/根據(jù)學號刪除學生信息AnXingMingShoZiMuChaXunStudent();/按姓名首字母查詢4、 調(diào)試與測試:調(diào)試方法,測試結(jié)果的分析與討論,測試過程中遇到的主要問題及采取的解決措 測試主要的問題: 是“排序”解決方案: 上網(wǎng)查資料和請教老師和同學5、 源程序如下 /* *內(nèi)容:學生信息管理系統(tǒng) *作者:尹朝霞 *時間:

5、2011年6月2日 */#include #include #include #include struct student int id;/學號char name20;/姓名int age;/年齡char sex;/姓別int score3;/成績(t語文t數(shù)學t英語)char address50;/地址char birthday20; /出生年月char telephone15;/電話char email50;/E-mailint avg;/平均成績;struct denglu char name120;/登錄用戶名char mima17;/登錄密碼;/全局學生結(jié)構(gòu)體數(shù)組struct st

6、udent stus100;/統(tǒng)計學生個數(shù)int count = 0;char mima=123456 ;/密碼void insertStudent();/添加void printStudent(struct student s);/輸出信息格式void selectAllStudent();/查詢void AaXingMingChaXunStudent();/姓名首字母查詢void AaXueHaoChaUunStudent();/學號查找void AaXingMingChaUunStudent();/姓名查找void XiuGaiStudent();/修改void AnXueHaoPaiX

7、uStudent();/按學號排序void AnXingMingShoZiMuPaiXunStudent();/按姓名首字母排序void AnChengjPaiXuStudent();/按成績排序void XunZePaiXu(); /排序void ShangChuStudent();/刪除void ShanChuStudent1(int len,int index);/根據(jù)學號刪除學生void AnXingMingShoZiMuChaXunStudent();/按姓名首字母查詢void main() struct denglu denlu;char name=yinzhaoxia;/姓名 c

8、har mima220;int i;printf(tt歡迎進入登陸界面n);printf(tt(*_*) 嘻嘻請輸入您的名字:);gets(denlu.name1);printf(tt(*_*) 嘻嘻請輸入您的密碼:);for(i=0;i6;i+) mima2i=getch(); printf(*);mima2i=0;if(strcmp(denlu.name1,name)=0)&(strcmp(mima2,mima)=0)printf(nttt 【.恭喜您登陸成功.】nnn);doint selected;printf(t *歡迎使用學生管理系統(tǒng)*n);printf(1.添加學生 2.刪除學生

9、 3.修改學生 4.按學號查找學生n); printf(5.查詢所有學生 6.按姓名查詢學生 7.排序 8按姓名首字母查詢n);printf(9.退出程序n);printf(請選擇以上列表中的功能:);scanf(%d,&selected);switch(selected)case 1:insertStudent();/添加break;case 2:ShangChuStudent();/刪除break;case 3:XiuGaiStudent();/修改break;case 4:AaXueHaoChaUunStudent();/學號查找break;case 5:selectAllStudent

10、();/查詢break;case 6:AaXingMingChaXunStudent();/姓名查找break;case 7: XunZePaiXu(); /排序break;case 8: AnXingMingShoZiMuChaXunStudent();/姓名首字母查詢 break;default:printf(t *謝謝使用學生管理系統(tǒng)* n);printf(t *版權(quán)所有 * 違者必究* n);exit(0);while(1);elseprintf(nttt 對不起您的輸入有誤,不能進入n);void insertStudent()char result;int i,sum=0;dopr

11、intf(請輸入第%d個學生信息:n,count + 1);printf(t學號:); scanf(%d,&stuscount.id);printf(t姓名:);fflush(stdin);gets(stuscount.name);printf(t年齡:);scanf(%d,&stuscount.age);printf(t性別:);fflush(stdin);stuscount.sex = getchar();printf(t成績:n);sum=0;for(i = 0;i 3;i+)printf(tt第%d門成績:,i + 1);scanf(%d,&stuscount.scorei); sum

12、+=stuscount.scorei;stuscount.avg=sum/3;fflush(stdin);printf(t家庭地址:);gets(stuscount.address);printf(t出生年月:);gets(stuscount.birthday);printf(t電話:);gets(stuscount.telephone);printf(tE-mail:);gets(stuscount.email); count+; printf(是否還要繼續(xù)輸入學生信息?(y/n));fflush(stdin);result = getchar();while(result != n & r

13、esult != N);selectAllStudent();void selectAllStudent()int i;printf(所有信息如下:n);printf(學號t姓名t年齡t性別t語文t數(shù)學t英語t住址t出生年月t電話tE-mailn);for(i = 0;i count | a 1) printf(對不起沒有這個學號,請您認真查詢后再輸入); else printf(您要查詢的學生信息如下:n); printf(學號t姓名t年齡t性別t語文t數(shù)學t英語t住址t出生年月t電話tE-mailn); for(i=0;icount;i+) if(a=stusi.id) printStud

14、ent(stusi); printf(是否還要繼續(xù)查詢學生信息?(y/n));fflush(stdin);result = getchar(); while(result != n & result != N);void AaXingMingChaXunStudent() char result; int i,g=0; struct student stu1; do g=0; printf(請輸入您要查詢學生姓名:); fflush(stdin); gets(stu1.name); for(i=0;icount;i+) if(strcmp(stu1.name,stusi.name)!=0) g

15、+; continue; if(g=count) printf(對不起沒有這個姓名,請您認真查詢后再輸入); else printf(您要查詢的學生信息如下:n); printf(學號t姓名t年齡t性別t語文t數(shù)學t英語t住址t出生年月t電話tE-mailn); for(i=0;i count | b 1) printf(對不起沒有這個學號,請您認真查詢后再輸入);elsefor(i=0;icount;i+) if(b=stusi.id) printf(請重新輸入要修改的學生信息:n);printf(請輸入學號);scanf(%d,&stusi.id);printf(t姓名:);fflush(

16、stdin);gets(stusi.name);printf(t年齡:);scanf(%d,&stusi.age);printf(t性別:);fflush(stdin);stusi.sex = getchar();printf(t成績:n);for(j = 0;j 3;j+)printf(tt第%d門成績:,j + 1);scanf(%d,&stusi.scorej);fflush(stdin);printf(t家庭地址:);gets(stusi.address);printf(t出生年月:);gets(stusi.birthday);printf(t電話:);gets(stusi.telep

17、hone);printf(tE-mail:);gets(stusi.email);printf(修改后的學生信息如下:n);printf(學號t姓名t年齡t性別t語文t數(shù)學t英語t住址t出生年月t電話tE-mailn);printStudent(stusi); printf(修改后的所有學生信息如下:n);printf(學號t姓名t年齡t性別t語文t數(shù)學t英語t住址t出生年月t電話tE-mailn);selectAllStudent();printf(是否還要繼續(xù)修改學生信息?(y/n));fflush(stdin);result = getchar(); while(result != n

18、& result != N);void AnXueHaoPaiXuStudent() struct student temp; int i,j,k=0; printf(請問您是想按降序還是按升序排序(1/2)); scanf(%d,&k); if(k=1) for(i=0;icount;i+) for(j=0;jcount-i-1;j+) if(stusj.idstusj+1.id) temp=stusj; stusj=stusj+1; stusj+1=temp; printf(排序后的學生信息如下:); selectAllStudent(); else if(k=2) for(i=0;ico

19、unt;i+) for(j=0;jstusj+1.id) temp=stusj; stusj=stusj+1; stusj+1=temp; printf(排序后的學生信息如下:); selectAllStudent(); void AnXingMingShoZiMuPaiXuStudent() struct student temp; int i,j,e; printf(請問您是想按降序還是按升序排序(1/2)); scanf(%d,&e); if(e=1) for(i=0;icount;i+) for(j=0;jcount-i-1;j+) if(stusj.name0-stusj+1.nam

20、e00) temp=stusj; stusj=stusj+1; stusj+1=temp; printf(排序后的學生信息如下:); selectAllStudent(); if(e=2) for(i=0;icount;i+) for(j=0;j0) temp=stusj; stusj=stusj+1; stusj+1=temp; printf(排序后的學生信息如下:); selectAllStudent(); void AnChengjPaiXuStudent() struct student temp; int i,j,f; printf(請問您是想按降序還是按升序排序(1/2)); sc

21、anf(%d,&f); if(f=1) for(i=0;icount;i+) for(j=0;jcount-i-1;j+) if(stusj.avgstusj+1.avg) temp=stusj; stusj=stusj+1; stusj+1=temp; printf(排序后的學生信息如下:); selectAllStudent(); if(f=2) for(i=0;icount;i+) for(j=0;jstusj+1.avg) temp=stusj; stusj=stusj+1; stusj+1=temp; printf(排序后的學生信息如下:); selectAllStudent();

22、void XunZePaiXu() int c; printf(請選擇是按學號排序/按姓名的首字母排序/按平均成績排序(1/2/3)n); scanf(%d,&c); if(c=1) AnXueHaoPaiXuStudent(); else if(c=2) AnXingMingShoZiMuPaiXuStudent(); else if(c=3) AnChengjPaiXuStudent(); void ShangChuStudent()char result;int s;doprintf(請輸入你要刪除的學生學號n);scanf(%d,&s);if(s count | s 1)printf(

23、對不起,沒有這個學號,請您認真查詢后再輸入n);elseif(count=1) printf(信息已經(jīng)刪完。n); break;elseShanChuStudent1(count,s-1);count-;selectAllStudent();printf(是否還要繼續(xù)刪除學生信息?(y/n));fflush(stdin);result = getchar();while(result != n & result != N);void ShanChuStudent1(int len,int index)int i;for(i = index;i = len;i+)stusi+1.id -=1;

24、stus i = stus i + 1; len-;void AnXingMingShoZiMuChaXunStudent() char result; int i,p=0; char e; do p=0; printf(請輸入您要查詢學生的姓名首字母); fflush(stdin); e = getchar(); for(i=0;icount;i+) if(e-stusi.name0)!=0) p+;continue; if(p=count) printf(對不起沒有這個姓名,請您認真查詢后再輸入); else printf(您要查詢的學生信息如下:n); printf(學號t姓名t年齡t性別t語文t數(shù)學t英語t住址t出生年月t電話tE-mailn); for(i=0;icount;i+) if(e-stusi.name0)=0) printf(您要查詢的學生信息如下n:);printf(學號t姓名t年齡t性別t語文t數(shù)學t英語t住址t出生年月t電話tE-mailn);printStudent(stusi); printf(是否還要繼續(xù)查詢學生信息?(y/n));fflush(stdin);result = getchar(); while(result != n) & (result != N) );

展開閱讀全文
溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!