C語(yǔ)言課程設(shè)計(jì)學(xué)生學(xué)籍管理系統(tǒng)_第1頁(yè)
C語(yǔ)言課程設(shè)計(jì)學(xué)生學(xué)籍管理系統(tǒng)_第2頁(yè)
C語(yǔ)言課程設(shè)計(jì)學(xué)生學(xué)籍管理系統(tǒng)_第3頁(yè)
已閱讀5頁(yè),還剩6頁(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)介

1、2013XXXXXX學(xué)院課程設(shè)計(jì)任務(wù)書(shū) 文檔副標(biāo)題 XXXXX一、 分析系統(tǒng)功能,繪制系統(tǒng)功能結(jié)構(gòu)框架圖.1.1 、 分析系統(tǒng)功能 .1.2 、 結(jié)構(gòu)框架圖 .二、 程序代碼以及界面形式.2.1 程序代碼如下 .2.2 、界面形式 .三、 使用說(shuō)明 .四、日志 .五、心得體會(huì) .六、參考文獻(xiàn) .1.1 、分析系統(tǒng)功能( 1) 用戶(hù)進(jìn)入主菜單后,就會(huì)在看到,菜單選項(xiàng)中添加有系統(tǒng)的各項(xiàng)功能,進(jìn)入的應(yīng)的選項(xiàng)就可進(jìn)行相應(yīng)的操作 . 其主要功能有:1、錄入學(xué)生信息2、刪除學(xué)生信息3、查詢(xún)學(xué)生信息4、學(xué)生信息排序5、改學(xué)生信息6、保存退出系統(tǒng)( 2)用戶(hù)選擇所需操作的選項(xiàng),進(jìn)入相應(yīng)的操作界面,在這里用戶(hù)就

2、可開(kāi)始進(jìn)行操作。1.2 、結(jié)構(gòu)框架圖主 菜 單錄入學(xué)生信息刪除查詢(xún)學(xué)生修改保存學(xué)學(xué)信學(xué)退2.1 程序代碼如下#include"stdio.h"#include"conio.h"#include"string.h"#include"stdlib.h"#define PF printf#define SF scanfstatic int n,i;struct address_bookchar name20;int num;char sex;char clas40;long telephone;char addr40;s

3、tud200;void add()char j;front1:system("cls");/* 清屏 */PF("n");PF("n 請(qǐng)輸入要添加的姓名:");SF("%s",);PF("n 請(qǐng)輸入要添加的學(xué)號(hào)(8 位 ):");SF("%d",&studn.num);PF("n 請(qǐng)輸入要添加的性別(F/M):");SF("n%c",&studn.sex);PF("n 請(qǐng)輸入要添加的班級(jí):&

4、quot;);SF("%s",&studn.clas);PF("n 請(qǐng)輸入要添加的電話號(hào)碼:");SF("%ld",&studn.telephone);PF("n請(qǐng)輸入要添加的地址:");SF("%s",studn.addr);getchar();n+;PF("是否繼續(xù) (Y/N)?:");j=getchar(); getchar();if(j='y'|j='Y') goto front1;/*再輸入記錄*/void del()

5、intk=0,m,i;char j;front2:system("cls");/*清屏 */PF("n 請(qǐng)輸入要?jiǎng)h除的學(xué)號(hào):");scanf("%d",&m);getchar();for(i=0;i<n;i+)if(m=studi.num) k=1;break;if(k=1) for(k=i;k<n-1;k+) studk=studk+1;/*查找記錄 */* 刪除記錄*/n-;PF(" 已刪除 nn");elsePF("找不到要?jiǎng)h除的記錄PF("按回車(chē)鍵返回:")

6、;getchar();!n");PF(" 是否繼續(xù) (Y/N)?:");j=getchar(); getchar();if(j='y'|j='Y') goto front2;void find()inti,k,s=0;front3:char j;s=0;system("cls");/* 清屏 */PF("n 請(qǐng)輸入要查詢(xún)的學(xué)號(hào): ");SF("%d",&k);for(i=0;i<n;i+)if(k=studi.num)PF("姓名學(xué)號(hào)性別班級(jí)電話地址

7、n");PF(" %-10s%-8d%c%-20s%-8ld%-6sn",,studi.num,studi.sex,studi.clas,studi.telephone,studi.addr);s=1;if(s=0)PF(" 查無(wú)此人 !n");getchar();PF("是否繼續(xù)查詢(xún) (Y/N)?:");j=getchar();getchar();if(j='y'|j='Y') goto front3;getchar();void arrange()int k,i;str

8、uct address_book t;system("cls");/* 清屏 */PF("姓名學(xué)號(hào)性別班級(jí)電話地址n");for(k=0;k<n-1;k+)for(i=0;i<n-k-1;i+)if(studi.num>studi+1.num)t=studi;studi=studi+1;studi+1=t;else continue;for(i=0;i<=n-1;i+)if(studk.num!=0)PF(" %-10s%-8d%c%-20s%-8ld%-6sn",,studi.num,st

9、udi.sex,studi.clas,studi.telephone,studi.addr);PF("按回車(chē)鍵返回!");getchar();getchar();void change()intk=0,m;char j;front5:system("cls");/*清屏 */PF("n 請(qǐng)輸入要修改記錄的學(xué)號(hào):");SF("%d",&m);getchar();for(i=0;i<n;i+)if(m=studi.num) k=1;break; if(k=1) PF("n");PF(&

10、quot;n 請(qǐng)輸入修改后的姓名:");SF("%s",);/*查找 */* 修改 */PF("n請(qǐng)輸入修改后的學(xué)號(hào):");SF("%d",&studi.num);PF("n請(qǐng)輸入修改后的性別(F/M):");SF("n%c",&studi.sex);PF("n請(qǐng)輸入修改后的班級(jí):");SF("%s",&studi.clas);PF("n 請(qǐng)輸入修改后的電話號(hào)碼:");SF(&quo

11、t;%ld",&studi.telephone);PF("n 請(qǐng)輸入修改后的地址:");SF("%s",studi.addr);PF("修改成功 n");getchar();if(k=0)PF("找不到要修改的記錄!n");PF("按回車(chē)鍵返回:");getchar();getchar();PF("是否繼續(xù) (Y/N)?:");j=getchar(); getchar();if(j='y'|j='Y') goto front5

12、;void main()char j;PF("nnnnnnttt PF("nnntttt PF("nnntttt歡迎使用學(xué)生學(xué)籍管理系統(tǒng)制作人:劉健 ");2008 年 6 月 ");");PF("nnnnnt按回車(chē)鍵進(jìn)入主菜單:");getchar();loop:system("cls");PF("n");PF("tttt*n");PF("tttt*主菜單*n");PF("tttt*n");PF("tt1

13、:錄入學(xué)生信息2:刪除學(xué)生信息 nn");PF("tt3:查詢(xún)學(xué)生信息4:學(xué)生信息排序 nn");PF("tt5:修改學(xué)生信息6:保存退出系統(tǒng) nn");PF("t請(qǐng)選擇 1/2/3/4/5/6: ");j=getchar();if(j='n') goto loop;/* 返回主菜單switch(j)*/case '1':case '2':case '3':case '4':case '5':case '6':ad

14、d(); goto loop;/* 返回主菜單 */del(); goto loop;find(); goto loop;arrange(); goto loop;change(); goto loop; FILE *fp;fp=fopen("student.dat","w");for(i=0;i<n;i+)fwrite(&studi,sizeof(struct address_book),1,fp);fclose(fp);exit(0);default:goto loop;2.2 、界面形式學(xué)生學(xué)籍管理系統(tǒng)是針對(duì)學(xué)生信息的管理,主要功能是

15、添加學(xué)生信息、刪除學(xué)生信息、查詢(xún)學(xué)生信息、學(xué)生信息排序、修改學(xué)生信息、保存信息。用戶(hù)打開(kāi)程序,進(jìn)入主界面(如圖1)(1) 、按回車(chē)進(jìn)入主菜單,列出各項(xiàng)功能(2) 、輸入 1 進(jìn)入錄入界面,用戶(hù)即可錄入信息,當(dāng)錄入完即會(huì)提示“是否繼續(xù)”,如果輸入“ Y”或者“ y”,則會(huì)繼續(xù)錄入,若輸入“ N”或者“ n”則會(huì)退出到主菜單。( 2)、在主菜單中,輸入 2,則會(huì)進(jìn)入刪除界面,輸入要?jiǎng)h除的學(xué)生的學(xué)號(hào)即可將該學(xué)生的信息刪除。( 3)、在主菜單中,輸入 3,則會(huì)進(jìn)入查詢(xún)界面,輸入要查的學(xué)生的學(xué)號(hào)即可查詢(xún)到信息。( 4)、在主菜單中,輸入 4,則會(huì)進(jìn)入進(jìn)入學(xué)生信息排序,在這里會(huì)顯示按學(xué)號(hào)由小到大排列出的所

16、有學(xué)生的信息。( 5)、在主菜單中,輸入 5,則會(huì)進(jìn)入學(xué)生信息修改界面,輸入想修改學(xué)生的學(xué)號(hào)后,就可在這里可以對(duì)該學(xué)生信息進(jìn)行修改。( 6)、在主菜單中,輸入 6,則會(huì)退出系統(tǒng),并且系統(tǒng)會(huì)自動(dòng)對(duì)信息進(jìn)行保存。6月 23日星期一從今天起,正式開(kāi)始做課程設(shè)計(jì)了。但坐到電腦前想開(kāi)始做時(shí),卻不懂如何開(kāi)始寫(xiě)起,都感到有點(diǎn)陌生了。因?yàn)榍耙魂囈恢痹诿τ诟骺频目荚?,好久沒(méi)碰 C語(yǔ)言了,都開(kāi)始有生疏感了。但還是試著在電腦上編了下,光要寫(xiě)個(gè)主函數(shù)還很吃力,更頭痛的吃力的結(jié)果還換來(lái)了很多錯(cuò)誤,本想編譯下,試試的,結(jié)果錯(cuò)誤警告一大堆。鑒于此,我還是決定先把書(shū)再好好看下,“工欲善其事,必先利其器”嘛!6月24日星期二昨

17、天看了一天的書(shū),又加上今天看的,可卻連一半還沒(méi)看完。我是按部就班的順序往下看的,但因?yàn)闀?shū)的前半部分大多是基礎(chǔ)知識(shí),因此在晚上上課時(shí)依舊不知如何編寫(xiě)。折騰了一晚上,想編寫(xiě)要調(diào)用的函數(shù)的,試著編了好多,但都是些到處是錯(cuò)誤的程序,根本沒(méi)法用。而且編的時(shí)候還是發(fā)現(xiàn)自己好多東西都忘記了,因此覺(jué)得還是得接著去看書(shū),沒(méi)轍,還是先把書(shū)吃透,把基本程理論再實(shí)踐吧!6月25日星期三今天又是啃了一天的書(shū),本還想去機(jī)房試試的呢,結(jié)果都沒(méi)來(lái)得及去,剛夠把書(shū)看完。今天重點(diǎn)把數(shù)組、函數(shù)和文件部分看了下。晚上上機(jī)的時(shí)候在機(jī)器上試了下,并為我的主函數(shù)編了個(gè)結(jié)構(gòu)體數(shù)組,用來(lái)存錄入的信息。同時(shí)今晚在調(diào)試主函數(shù)時(shí)發(fā)現(xiàn)我的主函數(shù)沒(méi)有清

18、屏的功能,所有工作都在同一屏幕上。問(wèn)了同學(xué),為里面加了個(gè)清屏的語(yǔ)句,但要加這語(yǔ)句得另加個(gè)頭文件,問(wèn)為什么要加這頭文件,他也不懂,只知道就是這樣規(guī)定的,并且這些規(guī)定都是得記住的。還是學(xué)得不夠多,得慢慢充實(shí)自己!6月26日星期四下午 C語(yǔ)言考試,復(fù)習(xí)了一上午,丁點(diǎn)課程設(shè)計(jì)也沒(méi)碰。等下午考完試直奔機(jī)房,編寫(xiě)了兩小時(shí),只給我的程序加了個(gè)添加了個(gè)“錄入學(xué)生信息”的函數(shù)。在做時(shí)候碰到了不少的問(wèn)題。主要是我的程序一次只能錄入一個(gè)學(xué)生信息,好不容易加了個(gè)可以繼續(xù)錄入的語(yǔ)句,可又碰到了新的問(wèn)題。當(dāng)我錄入學(xué)生信息的前三項(xiàng)后,就直接進(jìn)入“是否繼續(xù)錄入”。我懷疑是有肯能在定義數(shù)組長(zhǎng)度時(shí)定義太大了,當(dāng)我把它縮小后再編譯

19、、連接、運(yùn)行時(shí)居然成功了,可我現(xiàn)在還沒(méi)確定到底時(shí)什么原因。6月27日星期五又碰到新問(wèn)題了。我把其他要調(diào)用的函數(shù)也加進(jìn)去了,但是在用的時(shí)候發(fā)現(xiàn)加進(jìn)去的那些函數(shù)都不能用,就一添加函數(shù)在運(yùn)行時(shí)是正常的,而其他的進(jìn)入是可以,但在執(zhí)行的時(shí)候,它就會(huì)出來(lái)警告,說(shuō)不能被讀。自己找,也請(qǐng)同學(xué)幫忙找了,但都沒(méi)找出毛病。碰這問(wèn)題實(shí)在是難辦,因?yàn)椴荒軋?zhí)行,我也就不知道這些函數(shù)在這里運(yùn)行是否會(huì)正常,也就不知道是否需要改動(dòng)。6月30日星期一關(guān)于“警告”的問(wèn)題到現(xiàn)在還沒(méi)解決,有點(diǎn)心煩意亂了,改了下程序,可問(wèn)題又多了。在“查找”項(xiàng)里也出現(xiàn)了問(wèn)題,在查找時(shí)候即使是查找一個(gè)人,它卻也會(huì)每次都會(huì)把所查找的人給找出后,接著又會(huì)把其

20、他人的信息以“查無(wú)此人”顯示出來(lái)。反復(fù)檢查下發(fā)現(xiàn)好像是算法的問(wèn)題。是在循環(huán)里的時(shí)候出了錯(cuò),它自己不停了,非得把所有的運(yùn)行一遍在停。在我加了停止條件后問(wèn)題總算是得到解決了??伞熬娴膯?wèn)題今天還是沒(méi)解決掉。7月1號(hào)星期二“警告”的問(wèn)題困擾好久了,真是頭痛,都快被它給崩潰了。今天上課時(shí),我又檢查和調(diào)試了下,可還是沒(méi)找到問(wèn)題在哪兒。自己是搞不定了,只能是請(qǐng)教老師了。雖然向老師去請(qǐng)教的人很多,但還是被我逮到機(jī)會(huì)了,讓老師幫我看了下,檢查發(fā)現(xiàn)原來(lái)是在調(diào)用函數(shù)和主函數(shù)中所定義的類(lèi)型產(chǎn)生了差異。將被掉函數(shù)里的改過(guò)來(lái)后問(wèn)題久解決了。7月2號(hào)星期三程序差不多搞定了,就等答辯了!準(zhǔn)備答辯至于還是在調(diào)試程序,檢查下是

21、否會(huì)有遺漏的毛病。 但目前為止還沒(méi)有找到。 去答辯的人已經(jīng)有很多了, 順利通過(guò)的也不少。有點(diǎn)安奈不住了,想去答辯,可還是有點(diǎn)擔(dān)心。為了一次通過(guò)也不急著去答辯,反正人多,輪到我還不知道要等多久,還是靜下心來(lái)再把程序檢查下吧。7月3號(hào)星期四昨天想答辯來(lái)著,可是答辯的人實(shí)在是太多,把老師圍得嚴(yán)嚴(yán)實(shí)實(shí)的,想必他們都急著回家,而我又不著急,就不和他們?nèi)屩ゴ疝q了,大家都在那兒擠一塊兒,天又這么熱,雖然開(kāi)可空調(diào)在那兒也不好受,還是接著檢查我的程序。今天檢查時(shí)候還真檢查出了個(gè)警告,雖然每次編譯之后都是0 個(gè)錯(cuò)誤 0 個(gè)警告,但在編譯之后實(shí)際是會(huì)顯示一個(gè)警告的只是沒(méi)仔細(xì)去看。但問(wèn)題也不大,對(duì)程序也沒(méi)影響的,只是我重復(fù)對(duì)文件進(jìn)行了定義,其實(shí)是不必要的,刪除那個(gè)定義就解決了。7月4號(hào)星期五現(xiàn)在是萬(wàn)事俱備,只欠答辯了。下午一上課,我就在那兒等著答辯了。老師一來(lái)我就去答辯了,坐那兒也沒(méi)緊張的感覺(jué)了,因?yàn)閷?duì)程序已經(jīng)太熟悉了,胸有成竹了。結(jié)果與意料一樣順利通過(guò)答辯, 雖然談不上什么很了不起的事, 但心里還是有點(diǎn)小喜悅的,為這課程設(shè)計(jì)都做了兩星期了,光是程序就不知改了多少回,其中的困難也只有自己知道了?,F(xiàn)在都搞定了,呵呵!兩周的課程過(guò)起來(lái)其實(shí)也是很快的。這是我第一次做課程設(shè)計(jì),起初還沒(méi)做的時(shí)候覺(jué)得很快自己就將得編一個(gè)較大的程序,將會(huì)很有意思。帶著最初的好奇心,

溫馨提示

  • 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)論