版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、<p> 課 程 設 計 報 告 書</p><p> 題 目: 統(tǒng)計工資 </p><p> 系 別: 計算機科學與應用 </p><p><b> 目錄</b></p><p><b> 統(tǒng)計工資系統(tǒng)</b></p>&l
2、t;p><b> 1:需求分析3</b></p><p><b> 2:概要設計4</b></p><p><b> 3:詳細設計4</b></p><p> 3.1:職工工資信息瀏覽模塊4</p><p> 3.2:添加職工工資信息模塊4</p
3、><p> 3.3:統(tǒng)計職工工資總合模塊5</p><p> 3.4:按名字查詢職工工資信息模塊6</p><p> 3.5:按卡號查詢職工工資信息模塊6</p><p> 3.6:功能選擇........................................................................
4、....7</p><p><b> 4:調(diào)試分析7</b></p><p><b> 5:測試結果7</b></p><p><b> 6:總結9</b></p><p> 指導教師評語:10</p><p><b> 工資
5、信息管理系統(tǒng)</b></p><p><b> 1:需求分析</b></p><p><b> 設計要求:</b></p><p> 使用結構數(shù)組設計一個公司職員的數(shù)據(jù)結構,使用下述的結構定義:</p><p> struct employee{</p><p
6、><b> int age;</b></p><p> char name[15];</p><p> double salary;</p><p><b> };</b></p><p> 在主函數(shù)里構造一個數(shù)組company,用來存放職工信息。</p><p&
7、gt; 設計update函數(shù),用來對company中指定職員的信息進行更改。要求先按照name查詢到相應的職員,然后修改并保存。</p><p> 設計一個read函數(shù),用來向company中錄入職員信息,并顯示結果。</p><p> 編寫mean函數(shù)求平均工資。</p><p> 應該能對全體職工或大于某一年齡的職工工資求和并計算平均值。</p&g
8、t;<p> 編寫total函數(shù)對工資求和。</p><p> 應該能對全體職工或某一年齡段職工的工資求和。</p><p><b> 選做:</b></p><p> 從文件中讀數(shù)據(jù)存入數(shù)組</p><p> 將數(shù)組的內(nèi)容保存至文件</p><p> 根據(jù)題目要求,應當
9、把職工工資信息用結構體形式輸入,再定義一個全局變量和文件指針進行整個程序的運行,然后把職工工資信息送到文件中,所以應該提供一個結構體和文件的輸入輸出等操作;在程序中需實現(xiàn)職工工資瀏覽,查詢,統(tǒng)計等功能的操作,所以需要建立相應的模塊來實現(xiàn);另外還需提供鍵盤式選擇菜單實現(xiàn)功能,在運行時達到所要目的。</p><p><b> 2.概要設計</b></p><p> 本
10、程序的流程圖如下:</p><p><b> 3:詳細設計</b></p><p> 職員工資信息結構體:</p><p> 包括職工的姓名、銀行卡好、工作月份、應發(fā)工資、實發(fā)工資、水費、電費、稅。</p><p> 3.1:職工工資信息瀏覽模塊</p><p><b> 具體
11、實現(xiàn)如下:</b></p><p> void PrintInformation()//瀏覽職工工資信息 </p><p><b> {</b></p><p> struct staff temp;</p><p> if((fp=fopen("wages","rb
12、"))==NULL)</p><p><b> {</b></p><p> printf("cannot open the file!");</p><p><b> exit(0);</b></p><p><b> }</b><
13、/p><p> while(fread(&temp,sizeof(struct staff),1,fp)==1) printf_face();</p><p> fclose(fp);</p><p><b> }</b></p><p> 3.2:添加職工工資信息模塊</p><p&g
14、t;<b> 具體實現(xiàn)如下:</b></p><p> void Increase()//添加職工工資信息 </p><p><b> {</b></p><p> if((fp=fopen("wages","ab+"))==NULL)</p><p>
15、;<b> {</b></p><p> printf("cannot open the file!");</p><p><b> exit(0);</b></p><p><b> }</b></p><p> printf("\n
16、 請輸入要==添加的工資信息: \n");</p><p> printf("\n 姓名 銀行卡號 月份 應發(fā)工資 水費 電費 \n ");</p><p> scanf("%s%s%d%f%f%f",temp.Name,temp.CardNumber,&temp.Month,&temp.SPWages,&
17、temp.Water,&temp.Electrical);</p><p> if(temp.SPWages<=800) temp.Tax=0;</p><p> if((temp.SPWages>800.0)&&(temp.SPWages<1400.0))</p><p> temp.Tax=(temp.SPWage
18、s-800)*0.05;</p><p> if(temp.SPWages>1400){temp.Tax=(temp.SPWages-1400)*0.1;}</p><p> temp.APWages=temp.SPWages-temp.Water-temp.Electrical-temp.Tax;</p><p> fwrite(&temp,s
19、izeof(struct staff),1,fp);</p><p> fclose(fp);</p><p><b> }</b></p><p> 3.3:統(tǒng)計職工工資總合模塊</p><p><b> 具體實現(xiàn)如下:</b></p><p> void Sta
20、tistics()//統(tǒng)計某職工工資總合</p><p><b> {</b></p><p> struct staff temp;</p><p> char tempname[10]; </p><p> float sum=0;</p><p> int monthstart=0
21、,monthover=0;</p><p> printf("\n 輸入姓名 起始月份 終止月份 \n:");</p><p> scanf("%s%d%d", tempname, &monthstart,&monthover);</p><p> if((fp=fopen("wage
22、s","rb"))==NULL);</p><p><b> {</b></p><p> printf("cannot open the file!")</p><p><b> exit(0);</b></p><p><b>
23、 }</b></p><p> while(fread(&temp,sizeof(struct staff),1,fp)==1)</p><p><b> {</b></p><p> if(strcmp(temp.Name,tempname)==0)/判斷是否是該職工/</p><p><
24、;b> {</b></p><p> if(temp.Month>=monthstart&&temp.Month<=monthover)</p><p><b> {</b></p><p> sum+=temp.APWages;</p><p><b>
25、 }</b></p><p><b> }</b></p><p><b> }</b></p><p> printf("%d 月到 %d 月的工資總和 %f",monthstart,monthover,sum);</p><p> fclose(fp)
26、;</p><p><b> }</b></p><p> 3.4:按名字查詢職工工資信息模塊</p><p> 具體實現(xiàn)如下:void NameSearch()//按名字查詢某職工工資信息</p><p><b> {</b></p><p> char tem
27、pname[10];</p><p> struct staff temp;</p><p> printf("\n 輸入姓名:");</p><p> scanf("%s",tempname);</p><p> if((fp=fopen("wages","r
28、b"))==NULL)</p><p><b> {</b></p><p> printf("cannot open the file!");</p><p><b> exit(0);</b></p><p><b> }</b><
29、;/p><p> while(fread(&temp,sizeof(struct staff),1,fp)==1)</p><p> if(strcmp(temp.Name,tempname)==0)</p><p><b> {</b></p><p> printf_face();</p>
30、<p><b> }</b></p><p><b> }</b></p><p> fclose(fp);</p><p><b> }</b></p><p> 3.5:按卡號查詢職工工資信息模塊</p><p><b>
31、; 具體實現(xiàn)如下:</b></p><p> void CardNumberSearch()//按卡號查詢某職工工資信息</p><p><b> {</b></p><p> char tempCardNumber[10];</p><p> struct staff temp;</p>
32、;<p> printf("\n 輸入卡號:");</p><p> scanf("%s",tempCardNumber); </p><p> if((fp=fopen("wages","rb"))==NULL)</p><p><b> {<
33、/b></p><p> printf("cannot open the file!");</p><p><b> exit(0);</b></p><p><b> }</b></p><p> while(fread(&temp,sizeof(stru
34、ct staff),1,fp)==1) /***讀文件中資料**/</p><p><b> { </b></p><p> if(strcmp(temp.CardNumber,tempCardNumber)==0) /**判斷是否是該卡號**/</p><p><b> {</b></p><
35、p> printf_face();</p><p><b> } </b></p><p><b> } </b></p><p> fclose(fp);</p><p><b> }</b></p><p><b> 3.
36、6:功能選擇</b></p><p><b> 具體實現(xiàn)如下:</b></p><p> int Search()</p><p><b> {</b></p><p><b> Int n;</b></p><p><b>
37、; while(1)</b></p><p> printf("\n1. 按照卡號查詢: \n ");</p><p> printf("\n2. 按照姓名查詢: \n ");</p><p> printf("\n0. 返回上級目錄: \n");</p><p&g
38、t; scanf("%d",&n);</p><p><b> switch(n)</b></p><p><b> {</b></p><p> case 1:CardNumberSearch();break;</p><p> case 2:NameSear
39、ch();break;</p><p> case 0:return 0;break; </p><p><b> } </b></p><p><b> } </b></p><p><b> }</b></p><p><b>
40、4:調(diào)試分析</b></p><p> 在調(diào)試過程中,主要遇到以下幾個問題;</p><p> 由于瀏覽和查詢模塊中多定義了局部變量,且與全局變量同名將全局變量屏蔽,以至于這些模塊不能達到預期效果,總是只輸出最近一次的數(shù)據(jù),經(jīng)過修改后將其刪除,達到了所要的效果。使程序得以執(zhí)行。到目前程序中還有一小毛病,就是計算稅金是實數(shù)雙精度與單精度轉換存在不足。</p>&
41、lt;p><b> 5:測試結果</b></p><p> 1. 添加工資信息:</p><p> 2. 瀏覽工資信息:</p><p> 3. 統(tǒng)計工資信息:</p><p> 4. 查詢工資信息:</p><p> 0. 退出系統(tǒng): 1</p><p>
42、; 請輸入要==添加的工資信息:</p><p> 姓名 銀行卡號 月份 應發(fā)工資 水費 電費</p><p> wanglei 05507101 6 5000 25 35</p><p> 1. 添加工資信息:</p><p> 2. 瀏覽工資信息:</p><p> 3. 統(tǒng)計工資信息
43、:</p><p> 4. 查詢工資信息:</p><p> 0. 退出系統(tǒng): 1</p><p> 請輸入要==添加的工資信息:</p><p> 姓名 銀行卡號 月份 應發(fā)工資 水費 電費</p><p> wanglei 05507101 7 5100 20 40</p>
44、<p> 1. 添加工資信息:</p><p> 2. 瀏覽工資信息:</p><p> 3. 統(tǒng)計工資信息:</p><p> 4. 查詢工資信息:</p><p> 0. 退出系統(tǒng): 2</p><p> 姓名 銀行卡號 月份 應發(fā)工資 水費 電費 稅 實發(fā)工資</
45、p><p> wanglei 05507101 6 5000.00 25.00 35.00 360.00 4580.00</p><p> 姓名 銀行卡號 月份 應發(fā)工資 水費 電費 稅 實發(fā)工資</p><p> wanglei 05507101 7 5100.00 20.00 40.00 370.00 4
46、670.00</p><p> 1. 添加工資信息:</p><p> 2. 瀏覽工資信息:</p><p> 3. 統(tǒng)計工資信息:</p><p> 4. 查詢工資信息:</p><p> 0. 退出系統(tǒng): 3</p><p> 輸入姓名 起始月份 終止月份</p>
47、<p> :wanglei 6 7</p><p> 6 月到 7 月的工資總和 9250.0000001. 添加工資信息:</p><p> 2. 瀏覽工資信息:</p><p> 3. 統(tǒng)計工資信息:</p><p> 4. 查詢工資信息:</p><p> 0. 退出系統(tǒng):
48、 4</p><p> 1. 按照卡號查詢:</p><p> 2. 按照姓名查詢:</p><p> 0. 返回上級目錄:</p><p><b> 1</b></p><p> 輸入卡號:05507101</p><p> 姓名 銀行卡號 月份 應發(fā)工資
49、 水費 電費 稅 實發(fā)工資</p><p> wanglei 05507101 6 5000.00 25.00 35.00 360.00 4580.00</p><p> 姓名 銀行卡號 月份 應發(fā)工資 水費 電費 稅 實發(fā)工資</p><p> wanglei 05507101
50、7 5100.00 20.00 40.00 370.00 4670.00</p><p> 1. 按照卡號查詢:</p><p> 2. 按照姓名查詢:</p><p> 0. 返回上級目錄:</p><p><b> 2</b></p><p> 輸入姓名:wa
51、nglei</p><p> 姓名 銀行卡號 月份 應發(fā)工資 水費 電費 稅 實發(fā)工資</p><p> wanglei 05507101 6 5000.00 25.00 35.00 360.00 4580.00</p><p> 姓名 銀行卡號 月份 應發(fā)工資 水費 電費 稅 實發(fā)工資</p&g
52、t;<p> wanglei 05507101 7 5100.00 20.00 40.00 370.00 4670.00</p><p> 1. 按照卡號查詢:</p><p> 2. 按照姓名查詢:</p><p> 0. 返回上級目錄:</p><p><b> 0</b>
53、</p><p> 1. 添加工資信息:</p><p> 2. 瀏覽工資信息:</p><p> 3. 統(tǒng)計工資信息:</p><p> 4. 查詢工資信息:</p><p> 0. 退出系統(tǒng): 0</p><p> Press any key to continue</p&
54、gt;<p><b> 6:總結</b></p><p> 通過學習和練習C程序的設計基礎,了解了一些關于C的知識。在設計過程中,好多處困惑、疑問,有是會很煩,甚至不想再做,但必須做好,所以耐著性子做好了。此時感覺有一點點成就感,也學到了一些知識。</p><p><b> 指導教師評語:</b></p><
55、;p> 程序成績: </p><p> 報告成績: </p><p> 綜合成績: </p><p> 指導教師姓名: </p><p> 批 改 日 期: 年 月
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 計算機科學與技術課程設計
- java課程設計-模擬科學計算機
- 計算機科學基礎課程設計
- 計算機科學基礎課程設計
- 計算機科學與技術系
- 計算機應用基礎課程設計
- 計算機科學與編程導論課程設計參考設計題目
- 計算機科學與編程導論課程設計參考設計題目
- 計算機科學與編程導論課程設計參考設計題目
- 計算機科學與技術課程設計報告---年歷顯示
- 計算機原理課程設計
- 024計算機科學與技術系
- 計算機科學與工程系
- 計算機課程設計
- 計算機控制及其應用課程設計
- 《計算機算法設計與分析》課程設計
- 計算機組成原理課程設計-- 模型計算機的設計與實現(xiàn)
- 計算機組成原理課程設計——模型計算機的設計與實現(xiàn)
- 溫度控制系統(tǒng)計算機控制課程設計
- 計算機圖形課程設計報告
評論
0/150
提交評論