版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> 目 錄</b></p><p> 一、實驗目的……………………………………………………………3</p><p> 二、實驗課題簡介………………………………………………………3</p><p> 三、實驗內容……………………………………………………………3</p><p> 1、
2、實驗總體設計………………………………………………………3</p><p> 2、涉及函數(shù)模塊的功能及流程圖……………………………………4</p><p> 3、原程序清單…………………………………………………………5</p><p> 4、程序測試結果………………………………………………………17</p><p> 四、實驗結論………
3、……………………………………………………17</p><p> 五、實驗體會及建議……………………………………………………17</p><p> 六、參考文獻……………………………………………………………17</p><p><b> 一 實驗目的:</b></p><p> 進一步掌握計算機程序設計基礎基本
4、概念,理解其原理與方法。</p><p> 進一步理解和鞏固所學的理論知識,掌握高級語言程序設計的編程技巧。</p><p> 培養(yǎng)分析解決實際問題的能力,培養(yǎng)進行高級語言程序設計的實際編程能力。</p><p><b> 二. 實驗任務</b></p><p> ?。保茫谜Z言設計一個綜合應用程序。主要設計內容有
5、數(shù)據(jù)庫管理程序設計、圖形設計、科學計算程序設計、簡單游戲程序設計等。 </p><p> ?。玻畬W生可以結合自己的專業(yè)及興趣愛好自由命題,也可以從已給幾類題目中任選一題,下面題目只是基本要求,鼓勵同學自主創(chuàng)新、自由發(fā)揮。</p><p><b> 三. 實驗要求</b></p><p> 1. 要求學生自主完成以下工作:</p>
6、<p> 查閱資料,選定題目。</p><p> 2)制定方案,進行程序總體設計和詳細設計。</p><p> 3)程序詳細設計,調試,運行。</p><p><b> 4)撰寫設計報告。</b></p><p> 2. 實驗報告內容包括:封面、實驗目的、實驗內容、設計方案制定、總體設計、詳細設計
7、、源程序清單(要求有詳細注釋)、總結與體會。</p><p> 二 實驗課題簡介</p><p> 1. 課題名稱:數(shù)據(jù)庫管理軟件--------職工人事管理系統(tǒng)設計</p><p> 2. 功能:實現(xiàn)簡單的職工人事信息管理,基本信息包括職工編號、姓名、性別、年齡、身份證號和簡歷(50字以內)</p><p><b>
8、基本要求:</b></p><p> 設計簡單的菜單,能夠進行系統(tǒng)功能選擇。</p><p> 實現(xiàn)信息的錄入功能。</p><p> 在已有信息的基礎上添加新的記錄。</p><p> 刪除指定編號的記錄。</p><p><b> 修改指定編號的記錄</b></p&
9、gt;<p><b> 實現(xiàn)信息的瀏覽功能</b></p><p><b> 按編號查詢功能</b></p><p><b> 按身份證號排序功能</b></p><p> 3.相關知識: 結構體、數(shù)組、常用算法(排序、查找、刪除)</p><p><
10、;b> 三 實驗內容:</b></p><p> 1. 實驗總體設計:實現(xiàn)簡單的學生宿舍基本信息管理 </p><p> 用數(shù)組、指針、結構體等相關知識完成如下內容:</p><p> 1)、簡單菜單界面,按1-7、0鍵選擇選項</p><p> 2)、實現(xiàn)各個函數(shù)的功能</p><p&g
11、t;<b> 2.函數(shù)模塊:</b></p><p> 主模塊:main()/*主函數(shù)*/</p><p> 其它模塊:struct worker/*建立結構體*/</p><p> Appendworker()/*輸入職工信息*/</p><p> Printworker()/*輸出職工信息*/</p&
12、gt;<p> Sortworker()/*按入職工人數(shù)排序*/</p><p> Searchworker()/*查找職工信息*/</p><p> Deleteworker()/*刪除職工人數(shù)信息*/</p><p> Addworker()/*添加職工信息*/</p><p> Amendworker()/*修改
13、職工信息*/</p><p> char Menu() /*顯示菜單*/</p><p><b> 算法說明</b></p><p> Step 1 輸出主菜單</p><p> Step 2 按1-7、0鍵選擇</p><p> Step 3 實現(xiàn)各個函數(shù)的功能</p>
14、<p><b> 各函數(shù)功能及流程圖</b></p><p> struct worker/*建立結構體*/</p><p> Appendworker()/*輸入職工信息*/</p><p> Printworker()/*輸出職工信息*/</p><p> Sortworker()/*按入職工人數(shù)
15、排序*/</p><p> Searchworker()/*查找職工信息*/</p><p> Deleteworker()/*刪除職工人數(shù)信息*/</p><p> Addworker()/*添加職工信息*/</p><p> Amendworker()/*修改職工信息*/</p><p> char Me
16、nu() /*顯示菜單*/ </p><p><b> 流程圖</b></p><p><b> 程序測試</b></p><p><b> ?。?)靜態(tài)檢查;</b></p><p> (2)靜態(tài)檢查無誤后,上機調試;</p><p> ?。?)
17、改正語法錯誤;運行。</p><p><b> 檢查錯誤方法:</b></p><p> 將程序與流程圖仔細對照,如果流程圖正確,程序寫錯了,錯誤很容易發(fā)現(xiàn);</p><p> 采取“分斷檢查”的方法,不斷縮小檢查區(qū),就可能發(fā)現(xiàn)錯誤所在。</p><p><b> 3.源程序清單</b>&l
18、t;/p><p> #include<stdio.h></p><p> #include<string.h></p><p> #include<ctype.h></p><p> #include<stdlib.h></p><p> #define WR_NU
19、M 40 </p><p> struct worker</p><p><b> {</b></p><p> int number;</p><p> char name[15]; </p><p> char sex[5]; </p><p><b&g
20、t; int age;</b></p><p> int IDcard; </p><p> char summary[50];</p><p><b> };</b></p><p> typedef struct worker WR;</p><p> void App
21、endworker(WR *head, int N)</p><p><b> {</b></p><p><b> WR *p;</b></p><p> for(p=head;p<head+N;p++)</p><p><b> {</b></p>
22、<p> printf("\nInput number:");</p><p> scanf("%d",&p->number);</p><p> printf("Input name:");</p><p> scanf("%s",p->nam
23、e);</p><p> printf("Input sex:");</p><p> scanf("%s",&p->sex);</p><p> printf("Input age:");</p><p> scanf("%d",&
24、p->age);</p><p> printf("Input IDcard:");</p><p> scanf("%d",&p->IDcard);</p><p> printf("Input summary:");</p><p> scanf(&q
25、uot;%s",p->summary);</p><p><b> }</b></p><p><b> }</b></p><p> void Printworker(WR *head, int N)</p><p><b> {</b></p&
26、gt;<p><b> WR *p;</b></p><p> char str[100]={'\0'};</p><p> strcat(str,"Number Name sex age IDcard Summary");</p><p>
27、printf("%s",str); </p><p> for(p=head;p<head+N;p++) </p><p> printf("\nNo.%3d%10s%12s%5d%18d%20s",p->number,p->name,p->sex,p->age,p->IDcard,p->summary)
28、;</p><p><b> }</b></p><p> void Sortworker(WR *head,int N)</p><p><b> {</b></p><p> int i,j,k;</p><p><b> WR temp;</b
29、></p><p> for(i=0;i<N-1;i++)</p><p><b> {</b></p><p><b> k=i;</b></p><p> for(j=i;j<N;j++)</p><p><b> {</b&g
30、t;</p><p> if((head+j)->IDcard>(head+k)->IDcard)</p><p><b> {</b></p><p><b> k=j;</b></p><p><b> }</b></p><p
31、><b> }</b></p><p><b> if(k!=i)</b></p><p><b> {</b></p><p> temp=*(head+k);</p><p> *(head+k)=*(head+i);</p><p>
32、; *(head+i)=temp;</p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> int SearchNum(WR *head ,int num, int N)</p>
33、<p><b> {</b></p><p><b> int i;</b></p><p> for(i=0;i<N;i++)</p><p><b> {</b></p><p> if((head+i)->number == num) r
34、eturn i;</p><p><b> }</b></p><p> return -1;</p><p><b> }</b></p><p> void Searchworker(WR *head, int N)</p><p><b> {<
35、;/b></p><p> int number, findNo;</p><p> printf("Please Input the number you want to search:");</p><p> scanf("%d",&number);</p><p> find
36、No=SearchNum(head,number,N);</p><p> if(findNo==-1)</p><p><b> {</b></p><p> printf("\nNot found!\n");</p><p><b> }</b></p>
37、<p><b> else</b></p><p><b> {</b></p><p> Printworker(head+findNo,1);</p><p><b> }</b></p><p><b> }</b></p
38、><p> void Deleteworker(WR *head, int N)</p><p><b> {</b></p><p> int Deletenumber,findNo,y,i;</p><p> printf("Please Input the number you want to del
39、ete:");</p><p> scanf("%d",&Deletenumber);</p><p> findNo=SearchNum(head,Deletenumber,N);</p><p> if(findNo==-1)</p><p><b> {</b><
40、/p><p> printf("This number is not exist!");</p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p>&l
41、t;b> y=findNo;</b></p><p> for(i=y;i<N;i++)</p><p> *(head+i)=*(head+i+1);</p><p><b> }</b></p><p><b> }</b></p><p&g
42、t; void Addworker(WR *head, int N)</p><p><b> {</b></p><p> int Addnumber,findNo;</p><p> printf("Please Input the number you want to add:");</p>&l
43、t;p> scanf("%d",&Addnumber);</p><p> findNo=SearchNum(head,Addnumber,N);</p><p> if(findNo==-1)</p><p><b> {</b></p><p> Appendworker(
44、head+N,1);</p><p><b> }</b></p><p><b> }</b></p><p> void Amendworker(WR *head,int N)</p><p><b> {</b></p><p> int
45、 Amendnumber,findNo;</p><p> printf("Please Input the number you want to amend:");</p><p> scanf("%d",&Amendnumber);</p><p> findNo=SearchNum(head,Amendnu
46、mber,N);</p><p> if(findNo==-1)</p><p><b> {</b></p><p> printf("This number is not exist!");</p><p><b> }</b></p><p>
47、;<b> else</b></p><p><b> {</b></p><p> Appendworker(head+findNo,1);</p><p> Printworker(head,N);</p><p><b> }</b></p>&l
48、t;p><b> }</b></p><p> char Menu(void)</p><p><b> {</b></p><p><b> char ch;</b></p><p> printf("\nMansexment for worker&
49、#39;s IDcard\n");</p><p> printf(" 1.Append record\n");</p><p> printf(" 2.List record\n");</p><p> printf(" 3.Search record\n");</p>&l
50、t;p> printf(" 4.Sort record\n");</p><p> printf(" 5.Delete record\n");</p><p> printf(" 6.Add record\n");</p><p> printf(" 7.Amend record\n
51、");</p><p> printf(" 0.Exit\n");</p><p> printf("Please Input your choice:");</p><p> scanf(" %c",&ch); </p><p> return ch;&l
52、t;/p><p><b> }</b></p><p><b> main()</b></p><p><b> {</b></p><p><b> char ch;</b></p><p><b> int n,
53、N;</b></p><p> static int i=0;</p><p> WR WR[WR_NUM];</p><p> printf("Input worker's number(n<40):");</p><p> scanf("%d",&n);&l
54、t;/p><p><b> while(1)</b></p><p><b> {</b></p><p> ch=Menu();</p><p><b> N=n+i;</b></p><p> switch (ch)</p>&l
55、t;p><b> {</b></p><p> case'1':Appendworker(WR,N); </p><p><b> break;</b></p><p> case'2':Printworker(WR,N); </p><p><b
56、> break;</b></p><p> case'3':Searchworker(WR,N); </p><p><b> break;</b></p><p> case'4':Sortworker(WR,N); </p><p> printf(&quo
57、t;\nSorted result\n");</p><p> Printworker(WR,N); </p><p><b> break;</b></p><p> case'5':Deleteworker(WR,N);</p><p><b> i--;</b>
58、;</p><p><b> break;</b></p><p> case'6':Addworker(WR,N);</p><p><b> i++;</b></p><p><b> break;</b></p><p>
59、 case'7':Amendworker(WR,N);</p><p><b> break;</b></p><p> case'0':printf("End of program!\n"); </p><p><b> exit(0); </b></p&g
60、t;<p><b> break;</b></p><p> default:printf("Input error!");</p><p><b> break;</b></p><p><b> }</b></p><p><
61、b> }</b></p><p><b> }</b></p><p> 四 實驗結論:此程序可以在VC中正常、正確運行。實現(xiàn)職工人事管理系統(tǒng)</p><p><b> 五 實驗體會</b></p><p> 通過這次的實驗,我明白了編程的艱辛與編程結束并使之運行的喜
62、悅,了解到了C語言編程的來之不易,明白了要學習的東西還很多,懂得了一些簡單的計算機編程的原理,明確了以后的學習之路還很長。</p><p><b> 六、參考文獻</b></p><p> [1]蘇小紅等著。C語言大學使用教程。北京:電子工業(yè)出版社,2004</p><p> [2]蘇小紅等著。C語言大學使用教程習題與實驗指導。北京:電子
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 人事管理系統(tǒng)c語言課程設計報告
- c語言課程設計--人事管理系統(tǒng)
- c語言課程設計——人事管理系統(tǒng)
- c語言課程設計-人事管理系統(tǒng)
- c語言課程設計人事管理系統(tǒng)
- c語言課程設計人事管理系統(tǒng)
- c語言課程設計人事管理系統(tǒng)
- c語言課程設計(論文)-高校人事管理系統(tǒng)設計
- c++課程設計報告--人事管理系統(tǒng)
- 企業(yè)員工人事管理系統(tǒng)課程設計
- c語言課程設計---職工管理系統(tǒng)設計報告
- 人事管理系統(tǒng)課程設計報告
- 人事管理系統(tǒng)-課程設計報告
- 人事管理系統(tǒng)課程設計報告
- c++語言課程設計報告書--學生學籍管理系統(tǒng)
- c++課程設計 高校人事管理系統(tǒng)
- c++課程設計人事管理系統(tǒng)
- c++課程設計---公司人事管理系統(tǒng)
- 課程設計報告---企業(yè)人事管理系統(tǒng)
- 人事管理系統(tǒng)delphi課程設計報告
評論
0/150
提交評論