c語言專業(yè)課程設(shè)計(jì)宿舍標(biāo)準(zhǔn)管理系統(tǒng)_第1頁
c語言專業(yè)課程設(shè)計(jì)宿舍標(biāo)準(zhǔn)管理系統(tǒng)_第2頁
c語言專業(yè)課程設(shè)計(jì)宿舍標(biāo)準(zhǔn)管理系統(tǒng)_第3頁
c語言專業(yè)課程設(shè)計(jì)宿舍標(biāo)準(zhǔn)管理系統(tǒng)_第4頁
c語言專業(yè)課程設(shè)計(jì)宿舍標(biāo)準(zhǔn)管理系統(tǒng)_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

《面向過程程序設(shè)計(jì)》┊┊┊┊課程設(shè)計(jì)課程名稱:學(xué)生宿舍管理系統(tǒng)院系:班級:學(xué)號:姓名:指導(dǎo)老師:目錄引言……….2課程設(shè)計(jì)任務(wù)書………….3設(shè)計(jì)目標(biāo)設(shè)計(jì)要求課程設(shè)計(jì)匯報(bào)裝訂內(nèi)容及次序設(shè)計(jì)題目程序設(shè)計(jì)說明書………….3課程設(shè)計(jì)目標(biāo)…………….4目標(biāo)試驗(yàn)內(nèi)容需求分析程序基礎(chǔ)框架結(jié)構(gòu)圖…….5程序測試………………….6課程設(shè)計(jì)總結(jié)…………….8附錄(源代碼)………….18引言學(xué)生宿舍管理系統(tǒng)對于一個(gè)學(xué)校來說是必不可少組成部分。目前好多學(xué)校還停留在宿舍管理人員手工統(tǒng)計(jì)數(shù)據(jù)最初階段,手工記錄對于規(guī)模小學(xué)校來說還勉強(qiáng)能夠接收,但對于學(xué)生信息量比較龐大,需要統(tǒng)計(jì)存檔數(shù)據(jù)高校來說,人工統(tǒng)計(jì)是相當(dāng)麻煩。而且當(dāng)查找某條統(tǒng)計(jì)時(shí),因?yàn)閿?shù)據(jù)量龐大,還只能靠人工一條條去查找,這么不僅麻煩還浪費(fèi)了很多時(shí)間,效率也比較低。當(dāng)今社會(huì)是飛速進(jìn)步而世界,原始統(tǒng)計(jì)方法已經(jīng)被社會(huì)所淘汰,計(jì)算機(jī)化管理正是適應(yīng)時(shí)代產(chǎn)物。信息世界永遠(yuǎn)不會(huì)是一個(gè)平靜世界,當(dāng)一個(gè)技術(shù)不能滿足需求時(shí),就會(huì)有新技術(shù)誕生并替換舊技術(shù)。二十一世紀(jì)今天,信息社會(huì)占著主流地位,,計(jì)算機(jī)在各行各業(yè)中利用已經(jīng)得到普及,自動(dòng)化、信息化管理越來越廣泛應(yīng)用于各個(gè)領(lǐng)域。故伴隨宿舍需要管理信息快速增加,建立一個(gè)宿舍管理系統(tǒng)可使宿舍管理人員管理工作系統(tǒng)化、規(guī)范化、自動(dòng)化,大大提升管理效率。課程設(shè)計(jì)任務(wù)書一、設(shè)計(jì)目標(biāo)經(jīng)過此次課程設(shè)計(jì)使學(xué)生深入加深對C語言課程內(nèi)容了解,初步掌握通常應(yīng)用程序開發(fā)方法和步驟,深入了解和掌握C語言編程方法和技巧,提升學(xué)生用C語言處理實(shí)際問題能力。二、設(shè)計(jì)要求1、認(rèn)真查閱參考書、資料 2、遵守課程設(shè)計(jì)時(shí)間安排3、按時(shí)上機(jī),認(rèn)真調(diào)試程序 4、認(rèn)真完成課程設(shè)計(jì)匯報(bào)三、課程設(shè)計(jì)匯報(bào)裝訂內(nèi)容及次序1、課程設(shè)計(jì)封皮 2、目錄3、引言 4、課程設(shè)計(jì)任務(wù)書5、程序設(shè)計(jì)說明書6、程序設(shè)計(jì)目標(biāo)7、程序基礎(chǔ)框架結(jié)構(gòu)圖 8、課程設(shè)計(jì)總結(jié)和心得四、設(shè)計(jì)題目湖南工業(yè)大學(xué)學(xué)生宿舍管理系統(tǒng)程序設(shè)計(jì)說明書該課程設(shè)計(jì)課題是湖南工業(yè)大學(xué)學(xué)生宿舍管理系統(tǒng)。這個(gè)系統(tǒng)關(guān)鍵是實(shí)現(xiàn)對學(xué)生信息輸入,輸出,追加,查詢,修改,統(tǒng)計(jì)及刪除等功效,完成對學(xué)生宿舍信息管理。在學(xué)生宿舍管理系統(tǒng)中關(guān)鍵有輸入、顯示、追加、查詢、修改、統(tǒng)計(jì)、刪除及退出7大功效。設(shè)計(jì)首頁界面使其美觀。┊┊課程設(shè)計(jì)目標(biāo)┊┊一、目標(biāo)1.經(jīng)過此次課程設(shè)計(jì),強(qiáng)化上級動(dòng)手能力,在理論和實(shí)踐基礎(chǔ)上深入鞏固《C語言程序設(shè)計(jì)》課程學(xué)習(xí)內(nèi)容,掌握工程軟件設(shè)計(jì)基礎(chǔ)方法。2.熟悉C語言基礎(chǔ)內(nèi)容從而掌握C語言基礎(chǔ)知識和了解C程序基礎(chǔ)編寫及運(yùn)行。3.了解程序分模塊編寫并對程序每個(gè)模塊進(jìn)行具體設(shè)計(jì)而且能了解通常C語言編寫程序。4.熟悉C程序設(shè)計(jì)開發(fā)環(huán)境及C程序調(diào)試過程。二、試驗(yàn)內(nèi)容我設(shè)計(jì)是“學(xué)生宿舍管理系統(tǒng)”,關(guān)鍵是針對住宿學(xué)生個(gè)人信息管理,適用對象關(guān)鍵是學(xué)校,以方便學(xué)校對住宿學(xué)生管理。包含學(xué)生姓名、學(xué)號、性別、專業(yè)、班級等等。在編寫過程中關(guān)鍵利用C語言基礎(chǔ)知識有:數(shù)據(jù)類型(整形、實(shí)型、字符型、指針、數(shù)組、結(jié)構(gòu)等);運(yùn)算類型(算術(shù)運(yùn)算、邏輯運(yùn)算、自增自減運(yùn)算、賦值運(yùn)算等);程序結(jié)構(gòu)(次序結(jié)構(gòu)、判定選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu));大程序功效分解方法(即函數(shù)調(diào)用和使用)等。三、需求分析該程序是由C語言編寫一個(gè)宿舍管理查詢軟件,本程序在MicrosoftVisualC++6.0下運(yùn)行,其關(guān)鍵功效是實(shí)現(xiàn)對學(xué)生信息錄入、添加、刪除、修改、查詢、統(tǒng)計(jì)。其中查詢能夠分別以姓名、學(xué)號、宿舍號為關(guān)鍵字查詢學(xué)生信息。統(tǒng)計(jì)能夠分別以學(xué)號、宿舍號、性別、班級、專業(yè)為關(guān)鍵字進(jìn)行統(tǒng)計(jì)。程序基礎(chǔ)框架結(jié)構(gòu)圖學(xué)生宿舍管理系統(tǒng)學(xué)生宿舍管理系統(tǒng) 數(shù)據(jù)輸入退出系統(tǒng)數(shù)據(jù)刪除數(shù)據(jù)統(tǒng)數(shù)據(jù)輸入退出系統(tǒng)數(shù)據(jù)刪除數(shù)據(jù)統(tǒng)計(jì)數(shù)據(jù)修改數(shù)據(jù)查詢數(shù)據(jù)追加數(shù)據(jù)顯示返回按樓寢返回按樓寢查詢按樓號查詢按姓名查詢按學(xué)號查詢源代碼清單#include<stdio.h>#include<stdlib.h>#include<string.h>#include<ctype.h>#include<conio.h>#defineM10000typedefstructsushe{ charnum[10]; charname[20]; charsex[5]; charclass1[10]; charlh[10]; charqsh[10]; chartel[15];}XSSS;XSSSpers[M];intn=0;voidcx1();voidcx2();voidcx3();voidcx4();voidtj1();voidtj2();voidtj3();intisnum(char*);voidzm();voidload();voidmodify();voidinput();voidsave();voidlist();voidzm1();voidzm3();voidexplain();voiddele();main(){ charc; while(1) { system("cls"); zm(); c=getch(); switch(c) { case'1':load();input();save();break; case'2':load();modify();save();break; case'3':load();input();save();break; case'4':load();list();save();break; case'5':load();zm1();save();break; case'6':load();zm3();save();break; case'7':load();dele();save();break; case'8':load();explain();save();break; case'0':exit(0); default:printf("\n*****輸入錯(cuò)誤,請重新輸入!*****\n"); } }}voidzm(){ printf("**************************************************************\n"); printf("**\n"); printf("**\n"); printf("*湖南工業(yè)大學(xué)學(xué)生宿舍管理系統(tǒng)*\n"); printf("**\n"); printf("**\n"); printf("*************************************************************\n"); printf("\n\n\n"); printf("1.錄入信息\n"); printf("2.修改信息\n"); printf("3.追加信息\n"); printf("4.顯示信息\n"); printf("5.查詢信息\n"); printf("6.統(tǒng)計(jì)信息\n"); printf("7.刪除信息\n"); printf("8.版權(quán)信息\n"); printf("0.退出本程序\n");}voidzm1(){ charc; system("cls"); printf("**************************************************************\n"); printf("**\n"); printf("**\n"); printf("*湖南工業(yè)大學(xué)學(xué)生宿舍管理系統(tǒng)*\n"); printf("**\n"); printf("**\n"); printf("**************************************************************\n"); printf("\n\n\n"); printf("1.按學(xué)號查詢\n"); printf("2.按姓名查詢\n"); printf("3.按樓號查詢\n"); printf("4.按樓號+寢室號查詢\n"); printf("0.結(jié)束查詢返回上層\n"); c=getch(); switch(c) { case'1':cx1();break; case'2':cx2();break; case'3':cx3();break; case'4':cx4();break; case'0':return; default:printf("輸入錯(cuò)誤,按任意鍵返回!");getch();return; }}voidzm3(){ charc; system("cls"); printf("**************************************************************\n"); printf("**\n"); printf("**\n"); printf("*湖南工業(yè)大學(xué)學(xué)生宿舍管理系統(tǒng)*\n"); printf("**\n"); printf("**\n"); printf("**************************************************************\n"); printf("\n\n\n"); printf("1.按班級統(tǒng)計(jì)\n"); printf("2.按樓號統(tǒng)計(jì)\n"); printf("3.按樓號+寢室號統(tǒng)計(jì)\n"); printf("0.結(jié)束統(tǒng)計(jì)返回上層\n"); c=getch(); switch(c) { case'1':tj1();break; case'2':tj2();break; case'3':tj3();break; case'0':return; default:printf("輸入錯(cuò)誤,按任意鍵返回!");getch();return; }}voidcx1(){ charname[10]; inti,m; system("cls"); printf("\n\n\n**********按學(xué)號查詢**********\n"); printf("\n請輸入要查詢學(xué)號:"); scanf("%s",name); m=0; for(i=0;i<n;i++) if(strcmp(pers[i].num,name)==0) { printf("#Record學(xué)號姓名性別班級樓號寢室號本人電話\n"); printf("%7d%-8s%-8s%-6s%-8s%-8s%-8s%-8s\n",i+1,pers[i].num,pers[i].name,pers[i].sex,pers[i].class1,pers[i].lh,pers[i].qsh,pers[i].tel); m++; } if(m==0) printf("\n查無此人!\n"); printf("pressanykeycontinue\n"); getch();}voidcx2(){ charname[20]; inti,m; system("cls"); printf("\n\n\n**********按姓名查詢**********\n"); printf("\n請輸入姓名:"); scanf("%s",name); m=0; for(i=0;i<n;i++) if(strcmp(pers[i].name,name)==0) { printf("#Record學(xué)號姓名性別班級樓號寢室號本人電話\n"); printf("%7d%-8s%-8s%-6s%-8s%-8s%-8s%-8s\n",i+1,pers[i].num,pers[i].name,pers[i].sex,pers[i].class1,pers[i].lh,pers[i].qsh,pers[i].tel); m++; } if(m==0) printf("\n查無此人!\n"); printf("pressanykeycontinue\n"); getch();}voidcx3(){ charname[10]; inti,m; system("cls"); printf("\n\n\n**********按樓號查詢**********\n"); printf("\n請輸入要查詢樓號:"); scanf("%s",name); m=0; for(i=0;i<n;i++) if(strcmp(pers[i].lh,name)==0) { printf("#Record學(xué)號姓名性別班級樓號寢室號本人電話\n"); printf("%7d%-8s%-8s%-6s%-8s%-8s%-8s%-8s\n",i+1,pers[i].num,pers[i].name,pers[i].sex,pers[i].class1,pers[i].lh,pers[i].qsh,pers[i].tel); m++; } if(m==0) printf("\n文件中沒有該樓學(xué)生數(shù)據(jù)!\n"); printf("pressanykeycontinue\n"); getch();}voidcx4(){ charname[10]; charnum[10]; inti,m; system("cls"); printf("\n\n\n**********按樓號+寢室號查詢**********\n"); printf("\n請輸入要查詢樓號:"); scanf("%s",name); printf("\n請輸入要查詢寢室號:"); scanf("%s",num); m=0; for(i=0;i<n;i++) if(strcmp(pers[i].lh,name)==0&&strcmp(pers[i].qsh,num)==0) { printf("#Record學(xué)號姓名性別班級樓號寢室號本人電話\n"); printf("%7d%-8s%-8s%-6s%-8s%-8s%-8s%-8s\n",i+1,pers[i].num,pers[i].name,pers[i].sex,pers[i].class1,pers[i].lh,pers[i].qsh,pers[i].tel); m++; } if(m==0) printf("\n文件中沒有符合條件數(shù)據(jù)!\n"); printf("pressanykeycontinue\n"); getch();}voidload(){ FILE*fp; n=0; if((fp=fopen("xsss.txt","rb"))==NULL) { printf("Thefileisnotfound!\npleaseappendnewdata!\n"); return; } while(fread(&pers[n],sizeof(XSSS),1,fp)!=0)/*(!feof(fp))*/ { n++; } printf("數(shù)據(jù)導(dǎo)入成功!\n"); fclose(fp);}voidsave(){ FILE*fp; inti=0; if((fp=fopen("xsss.txt","wb"))==NULL) { printf("Thefileisnotfound!\npleaseappendnewdata!\n"); return; } for(i=0;i<n;i++) fwrite(&pers[i],sizeof(XSSS),1,fp); fclose(fp); printf("數(shù)據(jù)已保留\n");}voidinput(){ XSSSa; while(1) { system("cls"); printf("\n\n\n**********輸入信息**********\n"); printf("\n請輸入學(xué)生住宿信息\n"); printf("學(xué)號:"); scanf("%s",a.num); printf("姓名:"); scanf("%s",); printf("性別:"); scanf("%s",a.sex); printf("班級:"); scanf("%s",a.class1); printf("樓號:"); scanf("%s",a.lh); printf("寢室號:"); scanf("%s",a.qsh); printf("本人電話:"); scanf("%s",a.tel); if(isnum(a.tel)==0) { printf("輸入電話號碼錯(cuò)誤,系統(tǒng)將以\'0000\'替換!\n"); strcpy(a.tel,"0000"); } pers[n++]=a; printf("是否繼續(xù)錄入(Y/N)?"); if(toupper(getch())=='N') break; }}voidlist(){ inti; system("cls"); printf("\n\n\n********顯示全部個(gè)人信息********\n"); for(i=0;i<n;i++) { printf("#Record學(xué)號姓名性別班級樓號寢室號本人電話\n"); printf("%7d%-8s%-8s%-6s%-8s%-8s%-8s%-8s\n",i+1,pers[i].num,pers[i].name,pers[i].sex,pers[i].class1,pers[i].lh,pers[i].qsh,pers[i].tel); } printf("pressanykeycontinue\n"); getch();}voidmodify(){ charnum[20]; inti; system("cls"); printf("\n\n\n**********修改學(xué)生住宿信息**********\n"); printf("\n請輸入要修改學(xué)生學(xué)號:"); scanf("%s",num); for(i=0;i<n;i++) if(strcmp(pers[i].num,num)==0)break; if(i==n) printf("\n文件中沒有該學(xué)生數(shù)據(jù),無法進(jìn)行修改操作!\n"); else { printf("#Record學(xué)號姓名性別班級樓號寢室號本人電話\n"); printf("%7d%-8s%-8s%-6s%-8s%-8s%-8s%-8s\n",i+1,pers[i].num,pers[i].name,pers[i].sex,pers[i].class1,pers[i].lh,pers[i].qsh,pers[i].tel); printf("\n真要修改嗎(Y/N)?"); if(toupper(getch())=='Y') { printf("\n請輸入新信息:\n"); printf("學(xué)號:"); scanf("%s",pers[i].num); printf("姓名:"); scanf("%s",pers[i].name); printf("性別:"); scanf("%s",pers[i].sex); printf("班級:"); scanf("%s",pers[i].class1); printf("樓號:"); scanf("%s",pers[i].lh); printf("寢室號:"); scanf("%s",pers[i].qsh); printf("本人電話:"); scanf("%s",pers[i].tel); if(isnum(pers[i].tel)==0) { printf("輸入電話號碼錯(cuò)誤,系統(tǒng)將以\'0000\'替換!\n"); strcpy(pers[i].tel,"0000"); } printf("\n處理后結(jié)果:\n"); printf("#Record學(xué)號姓名性別班級樓號寢室號本人電話\n"); printf("%7d%-8s%-8s%-6s%-8s%-8s%-8s%-8s\n",i+1,pers[i].num,pers[i].name,pers[i].sex,pers[i].class1,pers[i].lh,pers[i].qsh,pers[i].tel); } } printf("\n處理結(jié)束!\n"); getch();}voidtj1(){ charname[10]; inti,m; system("cls"); printf("\n\n\n**********按班級統(tǒng)計(jì)**********\n"); printf("\n請輸入要統(tǒng)計(jì)人數(shù)班級號:"); scanf("%s",name); m=0; for(i=0;i<n;i++) if(strcmp(pers[i].class1,name)==0) m++; if(m==0) printf("\n文件中沒有符合條件數(shù)據(jù)!\n"); else printf("%s班有%d人住宿\n",name,m); printf("\n\n統(tǒng)計(jì)結(jié)束!\n"); getch();}voidtj2(){ charname[10]; inti,m; system("cls"); printf("\n\n\n**********按樓號統(tǒng)計(jì)**********\n"); printf("\n請輸入要統(tǒng)計(jì)人數(shù)樓號:"); scanf("%s",name); m=0; for(i=0;i<n;i++) if(strcmp(pers[i].lh,name)==0) m++; if(m==0) printf("\n文件中沒有符合條件數(shù)據(jù)!\n"); else printf("%s號樓有%d人住宿\n",name,m); printf("\n\n統(tǒng)計(jì)結(jié)束!\n"); getch();}voidtj3(){ charname[10]; charnum[10]; inti,m; system("cls"); printf("\n\n\n**********按樓號+寢室號統(tǒng)計(jì)**********\n"); printf("\n請輸入要統(tǒng)計(jì)人數(shù)樓號:"); scanf("%s",name); printf("\n請輸入寢室號:"); scanf("%s",num); m=0; for(i=0;i<n;i++) if(strcmp(pers[i].lh,name)==0&&strcmp(pers[i].qsh,num)==0) m++; if(m==0) printf("\n文件中沒有符合條件數(shù)據(jù)!\n"); else printf("%s號樓%s寢室有%d人住宿\n",name,num,m); printf("\n\n統(tǒng)計(jì)結(jié)束!\n"); getch();}intisnum(char*s){ inti=0; while(s[i]) { if(!(s[i]>='0'&&s[i]<='9'))return0; elsei++; } return1;}voidexplain(){ system("cls"); printf("**************************************************************\n"); printf("**\n"); printf("**\n"); printf("*湖南工業(yè)大學(xué)學(xué)生宿舍管理系統(tǒng)*\n"); printf("**\n"); printf("**\n"); printf("****************************************************************\n"); printf("\n\n\n"); printf("本學(xué)生宿舍管理系統(tǒng)由某某班學(xué)生某某某編寫,本程序有很多不足之處,\n"); printf("歡迎大家提出意見,以供修改。本系統(tǒng)最終版權(quán)解釋歸本人全部,未經(jīng)許

溫馨提示

  • 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)僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論