C語言課程設計-學籍管理系統(tǒng)_第1頁
C語言課程設計-學籍管理系統(tǒng)_第2頁
C語言課程設計-學籍管理系統(tǒng)_第3頁
C語言課程設計-學籍管理系統(tǒng)_第4頁
C語言課程設計-學籍管理系統(tǒng)_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、1. 課程設計的目的課程設計是公認的、最能直接的、有效地訓練提高創(chuàng)新思維,培養(yǎng)分析問題的能力、解決問題的能力的學科。即使是一個簡單的程序,從任務分析、確定算法、界面布局、編寫代碼、調(diào)試運行到書寫報告,整個過程都需要有條理地仔細構(gòu)思,這中間有猜測設想、判斷推理等的思維訓練,也有分析問題、解決問題、預測目標等能力的培養(yǎng)和開發(fā)。學籍管理一直是現(xiàn)在學校里使用最頻繁的,所以學籍管理系統(tǒng)則是使用最頻繁的系統(tǒng),通過計算機的協(xié)助可以大大減少繁重書寫工作量,提高工作效率節(jié)省很多時間,在各個方面都很方便、快捷。該程序合理的運用了條件、循環(huán)、結(jié)構(gòu)體等學過的知識點,方便各個用戶的運用于管理。通過運用菜單選擇轉(zhuǎn)換的方式

2、實現(xiàn)交互式管理,用戶可以很輕松的按鍵模式既可實現(xiàn)對程序的的操作,操作簡單易懂,功能比較豐富,可以很好的滿足用戶簡單的需要。通過輸入的方式來儲存用戶所需要的學號、姓名、性別、年齡等信息,完成簡單的學籍管理的功能。在很大的程度上完全減少可以避免的工作量,節(jié)省出大量時間,密切追隨現(xiàn)如今的信息化高科技快速的時代。2設計方案論證21設計思路建立一個函數(shù),用來保存用戶的學號、姓名、性別、年齡等信息,完成學籍管理的功能。主函數(shù)可以調(diào)用五個子函數(shù),分別完成輸入、顯示,簡明,刪除,結(jié)束五個功能。在主函數(shù)中可以設置調(diào)用五個子函數(shù)的方法,例如按1,2,3,4,5數(shù)字鍵,則分別可以執(zhí)行某個功能模塊5。其主要功能模塊即

3、如圖1所示:學籍管理輸入學生數(shù)據(jù)顯示原始數(shù)據(jù)制作簡明數(shù)據(jù)刪除鍵名數(shù)據(jù)結(jié)束圖1.學籍管理主要功能模塊 2.2.程序設計根據(jù)所構(gòu)想的功能及模塊設計出與之相對算法并建立函數(shù)來實現(xiàn)功能1。數(shù)據(jù)結(jié)構(gòu)體的定義:將一個物的信息作為一個結(jié)構(gòu)體,利用鏈表所以在結(jié)構(gòu)體 3。如下:struct wkrschar num10;char name10;char sex5;int age;wk10;main()主函數(shù):主函數(shù)是一個程序的入口,通過用模塊化設計,使主函數(shù)盡可能簡潔,其功能體現(xiàn)其中,在首先聲明一些必要變量,利用無限循環(huán)體為開關語句,該語句的條件通過函數(shù)的輸入值來實現(xiàn)功能選取,同時設置一個斷點,即當返回值為一定

4、條件時運行exit函數(shù)來結(jié)束程序,以免造成死循環(huán)4。實現(xiàn)菜單選擇功能的menu-select函數(shù)如圖3:char s2int cncn=atio(s)cn5是非開始return cn結(jié)束圖3 菜單選擇功能的menu-select函數(shù)輸入學生數(shù)據(jù)的readin函數(shù)如圖4:char ch10char cint i比較wkiname與chC= =“/n”C=rC= =zN=ii+i-是非是非是輸入wkinum輸入wkiage開始結(jié)束圖4 輸入學生數(shù)據(jù)的readin函數(shù)顯示原始數(shù)據(jù)的display函數(shù)如圖5:char c4int ip=wkin+1printf(n)i+1 p+1是非開始結(jié)束輸出c0

5、c1 c2 c3輸出num name sex age圖5 顯示原始數(shù)據(jù)的display函數(shù)制作簡明數(shù)據(jù)的str函數(shù)如圖6:char c4i=0比較與wkinamewkshorti.age=wki.ageiN+1i=0iN+1i+i+是是開始輸出c1 c3輸出name age結(jié)束圖6 制作簡明數(shù)據(jù)的str函數(shù)刪除鍵名數(shù)據(jù)的delwk函數(shù)如圖7:定義i ,j,flag,n,na10i=0na 與name一樣j=i比較 與wkshortj+.name jnflag&inj+i+是是開始當strcmp (na,“0”)!=0輸入na結(jié)束圖7 刪除鍵

6、名數(shù)據(jù)的delwk函數(shù)2.3.源程序#include#include#include#include#includestruct wkrschar num10;char name10;char sex5;int age;wk10;struct wkrchar name10;int age;wkshort10;int N=0;void readin();void display(struct wkrs *);void disp();void delwk();void srt();int menu_select();void main()for( ; ; )switch(menu_select()

7、case 1:readin();break;case 2:display(wk);break;case 3:srt();break;case 4:delwk();break;case 5:printf(結(jié)束);exit(0);int menu_select()char s2;int cn;printf(1. 輸入學生數(shù)據(jù)n);printf(2. 顯示原始數(shù)據(jù)n);printf(3. 制作簡明數(shù)據(jù)n);printf(4. 刪除鍵名數(shù)據(jù)n);printf(5. 結(jié)束n);doprintf(input 1-5:);gets(s);cn=atoi(s);while(cn5);return cn; vo

8、id readin()char ch10;char c;int i;printf(準備輸入學生信息:n);for(i=N+1;i10;i+)printf(學號: );scanf(%s,wki.num);printf(姓名: );getchar();gets(ch);strcpy(,ch);printf(性別: );scanf(%s,wki.sex);printf(年齡: );scanf(%d,&wki.age);printf(輸入回車繼續(xù)n輸入r重新輸入本學生內(nèi)容n輸入z結(jié)束:);c=getchar();c=getchar();if(c=n)continue;if(c=r)i-

9、;c=getchar();if(c=z)c=getchar();N=i;break; printf(輸入結(jié)束!n);void display(struct wkrs *p)char *c4=學號,姓名,性別,年齡;int i;p=wk;printf(n%8st%8st%6st%4s,c0,c1,c2,c3);for(i=0;inum,p-name,p-sex,p-age);printf(n); void srt()int i;char *c4=學號,姓名,性別,年齡;for(i=0;iN+1;i+)strcpy(,);wkshorti.age=wki.

10、age;printf(n學生簡明信息內(nèi)容:n);printf(%8st%4s,c1,c3); for(i=0;iN+1;i+)printf(n%8st%4d,,wkshorti.age);printf(n); void delwk()int i,j,flag=1;int n=N+1;char na10;char *c2=姓名,年齡;printf(n輸入待刪除的學生姓名(輸入0時結(jié)束).n);while(strcmp(na,0)!=0) printf(n姓名);gets(na);for(i=0;flag∈i+)if(strcmp(na,)

11、=0)for(j=i;jn;j+) strcpy(,wkshortj+1.name);wkshortj.age=wkshortj+1.age;flag=0;if(!flag)n-=1;if(n=0)printf(內(nèi)容已空n);elseprintf(%8st%s,c0,c1);for(i=0;in;i+)printf(n%8s %6d,,wkshorti.age);else printf(error);N-;printf(結(jié)束);3設計結(jié)果與分析在microsoft visual6.0 環(huán)境中輸入源程序,在沒有提示錯誤的情況下編譯,生成.exe

12、可執(zhí)行文件。點擊,會看到界面如圖8所示:圖8 程序主界面運行主函數(shù)時,首先調(diào)用函數(shù)main-select菜單選擇函數(shù),用do-while語句來實現(xiàn)各功能模塊的轉(zhuǎn)移。根據(jù)用戶的選擇數(shù)據(jù),分別調(diào)用其他自定義函數(shù)。在輸入1按回車后會提示準備輸入學生信息中的學號、姓名、性別、年齡,用戶可以把要記得的信息依次進行輸入。如圖9所示:圖9 輸入信息界面該界面是用函數(shù)readin函數(shù)中,運用for循環(huán)for(i=N+1;i10;i+)進行對信息的輸入。在輸入2按回車后會顯示之前所輸入的信息。如圖10所示:圖10顯示信息界面該界面通過用display函數(shù),調(diào)用指針display(struct wkrs *p)函

13、數(shù)使所輸入的信息完全的顯示出來。在輸入3按回車后會顯示學生簡明信息內(nèi)容。如圖11所示:圖11顯示信息界面該界面通過用str函數(shù),使用for循環(huán)調(diào)用strcpy(,)使信息簡明化,易晰可見。在輸入4按回車后會進行對輸入信息的刪改。顯示如圖12所示:圖12刪除信息界面該界面通過用delwk函數(shù),運用while語句while(strcmp(na,0)!=0)可進行對信息的刪除工作。在輸入5按回車后會結(jié)束本程序顯示。如圖13所示:圖13結(jié)束界面通過用delwk函數(shù)里的if循環(huán)語句,提示本次學籍系統(tǒng)輸入結(jié)束。4設計體會經(jīng)過這次課程設計,我學習并且鞏固了課本里的許

14、多知識,學會并運用了大量知識點,同時又學習了部分新的知識。提高了我對用C語言編程分析、解決實際問題的綜合能力,也提高了我自學能力以及運用知識的能力,讓我對c語言有了更多的了解。最重要的是學習了如何把知識運用到實際編程過程中,使我對編程了解的更加深入。在完成課程設計的過程中,注重了函數(shù)的調(diào)用問題,將一個比較大的程序分為幾個子程序模塊進行編寫。在程序設計中,語句的語法和常量變量的定義都有嚴格的要求,有時輸了一個中文標點、打錯了一個字母,編譯就不能通過,程序就無法正常運行。因此,程序設計初級階段,經(jīng)常會犯這樣的錯誤,可能要通過幾次乃至十多次的反復修改、調(diào)試,才能成功,但這種現(xiàn)象會隨著學習的深入而慢慢改觀。這當中就有一個嚴謹治學、一絲不茍的科學精神的培養(yǎng),又有一個不怕失敗、百折不撓品格的鍛煉。5參考文獻1王敬華,

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論