實(shí)現(xiàn)簡(jiǎn)單的學(xué)生宿舍基本信息管理_第1頁(yè)
實(shí)現(xiàn)簡(jiǎn)單的學(xué)生宿舍基本信息管理_第2頁(yè)
實(shí)現(xiàn)簡(jiǎn)單的學(xué)生宿舍基本信息管理_第3頁(yè)
實(shí)現(xiàn)簡(jiǎn)單的學(xué)生宿舍基本信息管理_第4頁(yè)
實(shí)現(xiàn)簡(jiǎn)單的學(xué)生宿舍基本信息管理_第5頁(yè)
已閱讀5頁(yè),還剩3頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

實(shí)現(xiàn)簡(jiǎn)單的學(xué)生宿舍基本信息管理實(shí)現(xiàn)簡(jiǎn)單的學(xué)生宿舍基本信息管理,宿舍的基本信息包括樓號(hào)、房間號(hào)、面積、所容納人數(shù)、已入住人數(shù)等基本要求:1.設(shè)計(jì)簡(jiǎn)單的菜單,能夠進(jìn)行系統(tǒng)功能選擇。2.實(shí)現(xiàn)信息的錄入功能。3.在已有信息的基礎(chǔ)上添加新的記錄。4.刪除指定房間號(hào)的記錄。5.修改指定房間號(hào)的記錄6.實(shí)現(xiàn)信息的瀏覽功能7.按房間號(hào)查詢(xún)功能8.按已入住人數(shù)排序功能問(wèn)題補(bǔ)充:擴(kuò)充功能:1)在數(shù)據(jù)維護(hù)(錄入、刪除、修改、添加)功能時(shí),要求輸入用戶(hù)名和密碼,以防信息被非法修改。提示:在主菜單界面中,將錄入、刪除、修改、添加功能合并為數(shù)據(jù)庫(kù)維護(hù)功能,當(dāng)選擇此選項(xiàng)時(shí),要求用戶(hù)輸入用戶(hù)名和密碼,如設(shè)數(shù)據(jù)庫(kù)維護(hù)人員為2人,則在程序中可相應(yīng)設(shè)置2個(gè)用戶(hù)名和密碼,只有正確時(shí),才進(jìn)入下一級(jí)維護(hù)菜單。(密碼設(shè)置參閱字符串操作部分)2)增加查詢(xún)方式,如可以根據(jù)姓名查詢(xún),根據(jù)書(shū)名查詢(xún),及多種排序方式提示:在查詢(xún)或排序中加入分支程序,不同的分支采用不同的查詢(xún)方式,每種查詢(xún)方式是一個(gè)獨(dú)立的模塊(函數(shù))3)將數(shù)據(jù)信息以文件的形式存盤(pán),數(shù)據(jù)庫(kù)信息的各種操作最后都能被存儲(chǔ),存儲(chǔ)前有提示,并且能打開(kāi)。提示:在主菜單中增加文件打開(kāi)、存儲(chǔ)選項(xiàng),C語(yǔ)言的文件操作都是通過(guò)庫(kù)函數(shù)實(shí)現(xiàn)的,參考關(guān)于文件的庫(kù)函數(shù)使用即可。4)采用動(dòng)態(tài)鏈表的方式進(jìn)行設(shè)計(jì)。其他回答共2條給你個(gè)學(xué)生成績(jī)管理的,你改一下變量名就好了#include#include#defineLENsizeof(structstudent)#defineN35#include#defineNULL0intn=0;charm[8]={'0','1','2','3','4','5','6','7'};inti;charc[10];chard[10];charfname[20],fname0[20],fname6[20]={"shanchu"};structstudent{longnum;charname[10];inteng;intmath;intcomp;intave;intall;}p;voidshuru(){FILE*fp;printf("\n\n\t請(qǐng)輸入存儲(chǔ)學(xué)生數(shù)據(jù)的文件名:");scanf("%s",fname);fp=fopen(fname,"w");printf("\t輸入的數(shù)據(jù)之間請(qǐng)用跳格鍵(Tab)隔開(kāi)\n\t每輸入完一個(gè)學(xué)生的信按回車(chē)鍵(Enter)\n");printf("\t結(jié)束輸入學(xué)生數(shù)據(jù)時(shí),請(qǐng)輸入一個(gè)學(xué)生的學(xué)號(hào)為0并按回車(chē)鍵\n");printf("\t學(xué)號(hào)姓名英語(yǔ)數(shù)學(xué)計(jì)算機(jī)\n");do{printf("\t");scanf("%ld",&p.num);if(p.num==0)break;scanf("\t%s\t%d\t%d\t%d",,&p.eng,&p.math,&p);p.all=(p.eng+p.math+p);p.ave=(p.all/3);fwrite(&p,LEN,1,fp);n++;}while(1);fclose(fp);}voidchazhao(){charfname1[20];FILE*fp;do{printf("\n\n\t請(qǐng)輸入查找學(xué)生數(shù)據(jù)的文件名:");scanf("%s",fname1);if(strcmp(fname1,fname)==0){fp=fopen(fname,"r");break;}elseprintf("\t你輸入的文件不存在\n");}while(1);longnumber;do{printf("\t請(qǐng)輸入要查找的學(xué)生的學(xué)號(hào)按回鍵(Enter):");scanf("%ld",&number);rewind(fp);for(i=0;i{fread(&p,LEN,1,fp);if(number==p.num){printf("\t學(xué)號(hào)姓名英語(yǔ)數(shù)學(xué)計(jì)算機(jī)平均分總?\n");printf("\t%ld\t%s\t%d\t%d\t%d\t%d\t%d\n",p.num,,p.eng,p.math,p,p.ave,p.all);}}printf("\t你還要查找嗎?如果繼續(xù)請(qǐng)輸y'加回車(chē)鍵,否'n'加回車(chē)鍵:");scanf("%s",c);}while(c[0]=='y');fclose(fp);}voidpaixu(){FILE*fp;charfname3[20];structstudentk[N];do{printf("\n\n\t請(qǐng)輸入你要排序的學(xué)生數(shù)據(jù)的文件名:");scanf("%s",fname3);if(strcmp(fname3,fname)==0){fp=fopen(fname,"r");break;}elseprintf("\t你輸入的文件不存在\n");}while(1);rewind(fp);for(i=0;ifread(&k[i],LEN,1,fp);intw,q,j,g,t,t2,t3,t4,t5;charz[10];longt1;for(q=0;q{g=q;for(j=q+1;jif(k[j].avet=k[g].ave;k[g].ave=k[q].ave;k[q].ave=t;t1=k[g].num;k[g].num=k[q].num;k[q].num=t1;t2=k[g].eng;k[g].eng=k[q].eng;k[q].eng=t2;t3=k[g].math;k[g].math=k[q].math;k[q].math=t3;t4=k[g].comp;k[g].comp=k[q].comp;k[q].comp=t4;t5=k[g].all;k[g].all=k[q].all;k[q].all=t5;for(w=0;w<10;w++){z[w]=k[g].name[w];k[g].name[w]=k[q].name[w];k[q].name[w]=z[w];};}fclose(fp);printf("\n\n\t請(qǐng)輸入存儲(chǔ)排完序的數(shù)據(jù)的文件名\n\t注意此文件名和存儲(chǔ)原始數(shù)據(jù)的文件名不相同\n");printf("\t");scanf("%s",fname0);fp=fopen(fname0,"w");for(i=0;ifclose(fp);}voidshuchu(){FILE*fp;charfname2[20];do{printf("\n\n\t請(qǐng)輸入你要輸出學(xué)生數(shù)據(jù)的文件名:");scanf("%s",fname2);if(strcmp(fname2,fname)==0){fp=fopen(fname,"r");break;}elseif(strcmp(fname2,fname0)==0){fp=fopen(fname0,"r");break;}elseif(strcmp(fname2,fname6)==0){fp=fopen(fname6,"r");break;}elseprintf("\t你輸入的文件不存在\n");}while(1);rewind(fp);printf("\t學(xué)號(hào)姓名英語(yǔ)數(shù)學(xué)計(jì)算機(jī)平均分總分\n");printf("\t==============================================================\n");for(i=0;i{fread(&p,LEN,1,fp);printf("\t%ld\t%s\t%d\t%d\t%d\t%d\t%d\n",p.num,,p.eng,p.math,p,p.ave,p.all);}printf("\t==============================================================\n");fclose(fp);}voidtongji(){FILE*fp;charfname4[20];inte1=0,e2=0,e3=0,e4=0,e5=0;do{printf("\n\n\t請(qǐng)輸入你要統(tǒng)計(jì)的學(xué)生數(shù)據(jù)的文件名:");scanf("%s",fname4);if(strcmp(fname4,fname)==0){fp=fopen(fname,"r");break;}elseprintf("\t你輸入的文件不存在\n");}while(1);rewind(fp);for(i=0;i{fread(&p,LEN,1,fp);if(p.ave<=59&&p.ave>=0)e1=e1+1;if(p.ave<=69&&p.ave>=60)e2=e2+1;if(p.ave<=79&&p.ave>=70)e3=e3+1;if(p.ave<=89&&p.ave>=80)e4=e4+1;if(p.ave<=100&&p.ave>=90)e5=e5+1;}fclose(fp);printf("\t按平均分統(tǒng)計(jì)各分?jǐn)?shù)段的學(xué)生人數(shù)\n");printf("\t==============================================================\n");printf("\t分?jǐn)?shù)段\t0--59\t60--69\t70--79\t80--89\t90--100\n");printf("\t人數(shù)\t%d\t%d\t%d\t%d\t%d\n",e1,e2,e3,e4,e5);printf("\t==============================================================\n");}voidshanchu(){FILE*fp,*fp1;charfname5[20];longnumber;structstudentM[N];printf("\n\t");do{printf("\n\t請(qǐng)輸入你要?jiǎng)h除學(xué)生數(shù)據(jù)的文件名:");scanf("%s",fname5);if(strcmp(fname5,fname)==0){fp=fopen(fname,"r");break;}elseprintf("\n\t你輸入的文件不存在\n");}while(1);rewind(fp);fp1=fopen(fname6,"w");do{printf("\t請(qǐng)輸入要?jiǎng)h除數(shù)據(jù)的學(xué)生的學(xué)號(hào)并按回車(chē)鍵:");scanf("%ld",&number);for(i=0;i{fread(&M[i],LEN,1,fp);if(M[i].num!=number)fwrite(&M[i],LEN,1,fp1);}n--;fcloseall();fp1=fopen(fname6,"r");fp=fopen(fname,"w");for(i=0;i{fread(&M[i],LEN,1,fp1);fwrite(&M[i],LEN,1,fp);}fcloseall();printf("\t你還要?jiǎng)h除嗎?如果繼續(xù)請(qǐng)輸入'y'加回車(chē)鍵,否則'n'加回車(chē)鍵:");scanf("%s",c);}while(c[0]=='y');}voidcharu(){FILE*fp;charfname7[20];do{printf("\t請(qǐng)輸入你要插入學(xué)生數(shù)據(jù)的文件名:");scanf("%s",fname7);if(strcmp(fname7,fname)==0){fp=fopen(fname,"r+");break;}elseprintf("\t你輸入的文件不存在");}while(1);printf("\t請(qǐng)輸入你要插入的數(shù)據(jù)\n\t輸入的數(shù)據(jù)之間請(qǐng)用跳格鍵(Tab)隔開(kāi)\n\t每輸入完一個(gè)學(xué)生的數(shù)據(jù)按回車(chē)鍵(Enter)\n");printf("\t結(jié)束插入學(xué)生數(shù)據(jù)時(shí),請(qǐng)輸入一個(gè)學(xué)生的學(xué)號(hào)為0并按回車(chē)鍵\n");printf("\t學(xué)號(hào)\t姓名\t英語(yǔ)\t數(shù)學(xué)\t計(jì)算機(jī)\n");do{fseek(fp,n*LEN,0);printf("\t");scanf("\t%ld",&p.num);if(p.num==0)break;scanf("\t%s\t%d\t%d\t%d",,&p.eng,&p.math,&p);p.all=(p.eng+p.math+p);p.ave=(p.all/3);fwrite(&p,LEN,1,fp);n++;}while(1);fclose(fp);}voidzhujiemian(){printf("\n\t主菜單\n");printf("\n");printf("\t==============================================================\n");printf("\n");printf("\t1.數(shù)據(jù)輸入2.數(shù)據(jù)輸出\n");printf("\n");printf("\t3.數(shù)據(jù)排序(按平均分)4.數(shù)據(jù)查找(按學(xué)號(hào))\n");printf("\n");printf("\t5.數(shù)據(jù)的插入6.數(shù)據(jù)的刪除(按學(xué)號(hào))

溫馨提示

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

評(píng)論

0/150

提交評(píng)論