![C語言學(xué)生宿舍管理系統(tǒng)_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/23/bf1fe827-fc34-455d-804c-5505de75b156/bf1fe827-fc34-455d-804c-5505de75b1561.gif)
![C語言學(xué)生宿舍管理系統(tǒng)_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/23/bf1fe827-fc34-455d-804c-5505de75b156/bf1fe827-fc34-455d-804c-5505de75b1562.gif)
![C語言學(xué)生宿舍管理系統(tǒng)_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/23/bf1fe827-fc34-455d-804c-5505de75b156/bf1fe827-fc34-455d-804c-5505de75b1563.gif)
![C語言學(xué)生宿舍管理系統(tǒng)_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/23/bf1fe827-fc34-455d-804c-5505de75b156/bf1fe827-fc34-455d-804c-5505de75b1564.gif)
![C語言學(xué)生宿舍管理系統(tǒng)_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/23/bf1fe827-fc34-455d-804c-5505de75b156/bf1fe827-fc34-455d-804c-5505de75b1565.gif)
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、#include#include#include /定義學(xué)生結(jié)構(gòu)體struct Studentint dorNo; /宿舍號char stuName20; / intstuNo; / char stuSex10;char dept20;char major20;int tel; /xx *stu;/函數(shù)指針void(*p)(struct Student *,int );/錄入學(xué)生信息void insert(struct Student*,int );/按學(xué)號查找void noSeek(struct Student*,int );/函數(shù)功能:打印信息void output(struct Stud
2、ent*,int );/*函數(shù)功能:將數(shù)據(jù)寫入文件*/void write(struct Student *,int );/*函數(shù)功能:讀取文件數(shù)據(jù)*/void read(struct Student *,int );/按宿舍查找void dSeek(struct Student *,int );/按姓名查找void naSeek(struct Student*,int );/按系別查找void deSeek(struct Student *,int);/刪除學(xué)生信息void del(struct Student *,int );/修改學(xué)生信息void modify(struct Studen
3、t*,int );/增加學(xué)生信息void add(struct Student *,int);/全局變量來記錄存儲(chǔ)學(xué)生的人數(shù)int num=0;/主函數(shù)int main()/學(xué)生姓名學(xué)生學(xué)號性別 系別專業(yè)*n);錄入學(xué)生信息);按學(xué)號查詢n);按宿舍號查詢);按姓名查詢n);按系別或?qū)I(yè)查詢);添加信息n);修改信息);保存信息n);讀取信息);刪除信息n);退出系統(tǒng)n);t*n);printf(-n);printf( tscanf(%s,&ch);/用函數(shù)指針指向各函數(shù)if(strcmp(ch,1)=0) p=insert;(*p)(stu,num);else if (strcmp(ch,2
4、)=0)p=noSeek;(*p)(stu,num);else if(strcmp(ch,3)=0)p=dSeek;(*p)(stu,num);char ch10;printf( t-歡迎進(jìn)入宿舍管理系統(tǒng)printf(請輸入你想存儲(chǔ)的學(xué)生人數(shù):) ;scanf(%d,&num);system(cls);/申請動(dòng)態(tài)存儲(chǔ)空間stu=(struct Student *)malloc(sizeof(structStudent)*num); while(1)system(cls); printf(n); printf( t printf(歡迎進(jìn)入宿舍管理系統(tǒng)n);n);tt1.t2.t3.t4.t5.t
5、6.t7.t8.t9.t10.t0.printf(printf(printf(printf(printf(printf(printf(printf(printf(printf(printf(printf(請選擇你想實(shí)現(xiàn)的功能:);else if(strcmp(ch,4)=0)p=naSeek;(*p)(stu,num);else if(strcmp(ch,5)=0)p=deSeek;(*p)(stu,num);else if(strcmp(ch,6)=0)p=add;(*p)(stu,num);else if(strcmp(ch,7)=0)p=modify;(*p)(stu,num);else
6、 if(strcmp(ch,8)=0)p=write;(*p)(stu,num);else if(strcmp(ch,9)=0)p=read;(*p)(stu,num);else if(strcmp(ch,10)=0)p=del;(*p)(stu,num);else if(strcmp(ch,0)=0)exit(0);/ write(stu,num);/read(stu,num);return 0;/輸入學(xué)生相關(guān)信息void insert(struct Student *stu,int num)int i=0;char ch;system(cls);do if(inum)printf(輸入第(
7、個(gè)學(xué)生的宿舍號:,i+1);scanf(%d,&stui.dorNo) ;printf(n姓名:);scanf(%s,&stui.stuName);printf(n學(xué)號:); scanf(%d,&stui.stuNo);printf(n性別:);scanf(%s,&stui.stuSex);printf(n系別:);scanf(%s,&stui.dept);printf(n專業(yè):);scanf(%s,&stui.major);printf(nxx:); scanf(%d,&stui.tel); i+;elseprintf( nt人數(shù)已滿無法繼續(xù)輸入);printf(n是退出該功能輸入?(Y/N
8、):);ch=getchar(); ch=getchar();while(ch!=y&ch!=Y);write(stu,num);system(cls);/按學(xué)號查找void noSeek(struct Student *stu,int num)int i;int m;char ch;char a;system(cls);printf(n確認(rèn)您已錄入學(xué)生信息?:);a=getchar();a=getchar();if(a!=n&a!=N)printf(n請輸入你想要查找的學(xué)生學(xué)號:);scanf(%d,&m);for(i=0;inum;i+)if(m=stui.stuNo)printf(n宿舍
9、號: %dn姓名: %sn學(xué)號: %dn性別: %sn系 別: %sn專業(yè) :%snxx號 碼:%dn,stui.dorNo,stui.stuName,stui.stuNo,stui.stuSex,stu i.dept,stui.major,stui.tel);elseprintf(ntprintf(ngetchar();getchar();/按宿舍查找void dSeek(struct Student* stu,int num )int i; int dor;沒有你要查找的學(xué)生信息。n) ;請按任意鍵返回 .);char ch,a;system(cls);printf(n確認(rèn)您已錄入學(xué)生信息
10、?:);a=getchar();a=getchar();if(a!=n&a!=N)printf(n請輸入你想要查找的學(xué)生宿舍號:);scanf(%d,&dor);for(i=0;inum;i+)if(dor=stui.dorNo)printf(n宿舍號: %dn姓名: %sn學(xué)號: %dn性別: %sn系別: %sn專 業(yè) :%snxx號 碼:%dn,stui.dorNo,stui.stuName,stui.stuNo,stui.stuSex,stu i.dept,stui.major,stui.tel);elseprintf(t printf(ngetchar();getchar();/按姓
11、名查詢void naSeek(struct Student *stu,int num)int i; char name20; char ch,a; system(cls); printf(n確認(rèn)您已錄入學(xué)生信息?:); a=getchar();a=getchar();if(a!=n&a!=N)printf(n請輸入你想要查找的學(xué)生姓名:); scanf(%s,name);for(i=0;inum;i+)沒找到你要的學(xué)生信息。 。nn);請按任意鍵返回 .);if(strcmp(name,stui.stuName)=0)printf(n宿舍號: %dn姓名: %sn學(xué)號: %dn性別: %sn別
12、:%sn專業(yè):%snxx碼:%dn,stui.dorNo,stui.stuName,stui.stuNo,stui.stuSex,stu i.dept,stui.major,stui.tel);else/按系別或?qū)I(yè)查詢void deSeek(struct Student *stu,int num)int i;char de20;char ch,a;system(cls);printf(n確認(rèn)您已錄入學(xué)生信息?:);a=getchar(); a=getchar(); if(a!=n&a!=N) printf(nt請輸入你想要查找的系別或?qū)I(yè):);scanf(%s,de);for(i=0;inu
13、m;i+)if(strcmp(de,stui.dept)=0)printf(n宿舍號: %dn姓名: %sn學(xué)號: %dn性別: %sn別:%sn專 業(yè):%snxx碼:%dn,stui.dorNo,stui.stuName,stui.stuNo,stui.stuSex,stu i.dept,stui.major,stui.tel);printf( n nt沒找到你要的學(xué)生信息。nn);printf(ngetchar();getchar();請按任意鍵返回 .);printf(ngetchar();getchar();/*函數(shù)功能:將數(shù)據(jù)寫入文件*/ void write(struct Stud
14、ent *stu,int num)int i;/控制循環(huán)FILE *fp ; /定義文件指針if(stunum-1.stuNo!=0)if(fp = fopen(E:student.txt,wt) = NULL) /有打開,提示錯(cuò)誤并退出 printf(ntgetchar(); /exit(0); / else for(i=0;inum; i+)/將數(shù)據(jù)依次寫入文件fprintf(fp,n宿舍號: %dn姓名: %sn學(xué)號: %dn性別: %sn系 別:%sn專 業(yè) :%snxx號碼:%dn,stui.dorNo,stui.stuName,stui.stuNo,stui.stuSex,stu
15、i.dept,stui.major,stui.tel);getchar();elseprintf( nnt沒找到你要的學(xué)生信息。n);請按任意鍵返回 .);如果文件沒文件沒有打開!程序結(jié)束!);等待用戶觀察 結(jié)束整個(gè)程序printf(ntstudent.txt文件中。n);elseprintf(ntgetchar();fclose(fp);/*函數(shù)功能:讀取文件數(shù)據(jù)*/void read(struct Student *stu,int num)int i;FILE * fp ; if(stunum-1.stuNo!=0)if(fp = fopen(E:student.txt,rt) = NUL
16、L)printf(數(shù)據(jù)讀取失敗!n);exit(0);elsefor(i=0; inum; i+)/從文件中讀出數(shù)據(jù)fscanf(fp,n宿舍號: %dn姓名: %sn學(xué)號: %dn性別: %sn別: %sn專業(yè) :%snxx碼:%dn,&stui.dorNo,&stui.stuName,&stui.stuNo,&stui.stuSex,&stui.dept,&stui.major,&stui.tel);printf(n宿舍號: %dn姓名: %sn學(xué)號: %dn性別: %sn別: %sn專 業(yè) :%snxx碼:%dn,stui.dorNo,stui.stuName,stui.stuNo,st
17、ui.stuSex,stu i.dept,stui.major,stui.tel);else已將學(xué)生 信息 保存在了D盤根目錄下的沒有學(xué)生信息。);printf(nt沒有學(xué)生信息。);getchar();getchar();fclose(fp);/修改信息void modify(struct Student *stu,int num)int m;int i;char ch;system(cls);printf(請輸入你想修改學(xué)生的學(xué)號:);scanf(%d,&m);for(i=0;inum;i+)if(m=stui.stuNo)printf(n宿舍號: %dn姓名: %sn學(xué)號: %dn性別:
18、 %sn系 別: %sn專 業(yè) :%snxx號 碼:%dn,stui.dorNo,stui.stuName,stui.stuNo,stui.stuSex,stu i.dept,stui.major,stui.tel);printf(n您確認(rèn)修改該學(xué)生信息嗎?:);ch=getchar();ch=getchar();if(ch!=N&ch!=n)printf(n輸入該學(xué)生的宿舍號:);scanf(%d,&stui.dorNo) ;printf(n姓名:);scanf(%s,&stui.stuName);printf(n學(xué)號:);scanf(%d,&stui.stuNo);printf(n性別:)
19、;scanf(%s,&stui.stuSex);printf(n系別:);scanf(%s,&stui.dept);printf(n專業(yè):);scanf(%s,&stui.major);printf(nxx:);scanf(%d,&stui.tel);write(stu,num); system(cls);printf( ntoutput(stu,num); else printf(nt /break; else continue; printf(n getchar(); getchar();/刪除相關(guān)學(xué)生信息void del(structStudent *stu,int num)int no
20、;int i;char ch;int j;printf(n請輸入您想刪除的學(xué)生學(xué)號:); scanf(%d,&no);for(i=0;inum;i+)if(no=stui.stuNo)printf(n宿舍號: %dn姓名: %sn學(xué)號: %dn性別: %sn系 別:%sn專業(yè):%snxx號碼:%dn,stui.dorNo,stui.stuName,stui.stuNo,stui.stuSex,stu i.dept,stui.major,stui.tel);printf(n您確認(rèn)刪除該學(xué)生信息?:);ch=getchar();ch=getchar();if(ch!=n&ch!=N)for(j=i
21、;j=num-1;j+)修改成功! !nn);無法修改信息!n);請按任意鍵返回 .);實(shí)現(xiàn)刪除學(xué)生信息/*(stu+j)=*(stu+j+1);num-;printf(ntwrite(stu,num); output(stu,num);else已成功刪除該學(xué)生信息! !n);printf(nt無法刪除!n);elsecontinue;printf(ngetchar();getchar();請按任意鍵返回.);/添加學(xué)生信息void add(struct Student *stu,int num)int no;int i;printf(n t請輸入你想添加的學(xué)生人數(shù):scanf(%d,&no);if(stunum-1.stuNo)!=0)stu=(struct Student *)realloc(stu,num+no);for(i=num;inum+no;i+)*(stu+num+no)=*(stu+num);printf(n輸入第4個(gè)學(xué)生的宿舍號scanf(%d,&stui.dorNo) ;printf(n姓名:););:,i+1);scanf(%s,&s
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 生態(tài)建筑引領(lǐng)未來商業(yè)趨勢
- 現(xiàn)代科技在股票市場分析中的應(yīng)用
- 校園餐飲消費(fèi)大數(shù)據(jù)洞察學(xué)生消費(fèi)習(xí)慣
- 2024年八年級生物下冊 6.2.1遺傳說課稿 (新版)冀教版
- 2024年八年級物理下冊 8.1認(rèn)識(shí)壓強(qiáng)說課稿 (新版)粵教滬版
- 14《普羅米修斯》(說課稿)2024-2025學(xué)年-統(tǒng)編版語文四年級上冊
- 2024年五年級數(shù)學(xué)下冊 五 分?jǐn)?shù)除法練習(xí)五說課稿 北師大版
- 2024-2025學(xué)年高中歷史 專題1 中國傳統(tǒng)文化主流思想的演變 3 宋明理學(xué)說課稿 人民版必修3
- 2024-2025學(xué)年八年級物理下冊 第十章 從粒子到宇宙 10.1 認(rèn)識(shí)分子說課稿 (新版)粵教滬版
- 2024-2025學(xué)年新教材高中生物 第3章 基因工程 第4節(jié) 蛋白質(zhì)工程的原理和應(yīng)用說課稿 新人教版選擇性必修3
- 地理標(biāo)志專題通用課件
- 《小英雄雨來》讀書分享會(huì)
- 【人教版】九年級化學(xué)上冊全冊單元測試卷【1-7單元合集】
- 蓋板涵施工工藝流程配圖豐富
- 中央導(dǎo)管相關(guān)血流感染防控
- 混合動(dòng)力汽車發(fā)動(dòng)機(jī)檢測與維修中職PPT完整全套教學(xué)課件
- 產(chǎn)時(shí)子癇應(yīng)急演練文檔
- 小學(xué)美術(shù)-《神奇的肥皂粉》教學(xué)設(shè)計(jì)學(xué)情分析教材分析課后反思
- 測量管理體系內(nèi)審檢查表
- 信號與系統(tǒng)復(fù)習(xí)題及答案
- 班組月度考核評分表
評論
0/150
提交評論