c语言 输入职工工资资料,通过结构体的数组来进行操作 报告,c语言课程设计报告-职工工资管理系统...
《c語言課程設計報告-職工工資管理系統》由會員分享,可在線閱讀,更多相關《c語言課程設計報告-職工工資管理系統(33頁珍藏版)》請在人人文庫網上搜索。
1、c 語言課程設計報告 - 職工工資管理系統課程設計報告課程設計報告題目:職工工資管理系統設 計 者:專業班級:學號:指導教師:所屬院系:一 設計需求說明一、職工工資管理系統功能設計要求1. 輸入記錄 :將每一個職工的姓名、 ID 號以及基本工資、職務工資、崗位津貼、醫療保險、公積金的數據作為一個記錄。 ?該軟件能建立一個新的數據文件或給已建立好的數據文件增加記錄。2. 顯示記錄 :根據用戶提供的記錄或者根據職工姓名顯示一個或幾個職工的各項工資和平均工資。3. 修改記錄 :可以對數據文件的任意記錄的數據進行修改并在修改前后3對記錄內容進行顯示。4查找記錄 : 可以對數據文件的任意記錄的數據進行查。
2、找并在查找前后對記錄內容進行顯示。5. 刪除記錄 :可刪除數據文件中的任一記錄。6恢復記錄 :能恢復被刪除的任一記錄。7. 統計 : (A) 計算各項工資平均工資及總工資 , (B)?統計符合指定條件(如職工工資前三項之和在2000 元以上、 20001500 元、 15001000元 ) 以內的工資職工人數及占總職工人數的百分比。 (C)按字符表格形式打印全部職工工資信息表及平均工資 (?包括各項總的平均工資)。8保存數據文件功能。9打開數據文件功能。經過逐層逐塊、不斷細化、求精過程,編寫程序并進行測試、驗證,可以逐個模塊地分開調試,并通過文件包含或用工程文件的形式進行逐步聯合調試。程序運行。
3、結果如下表所示(記錄個數至少 8 個)。4二模塊設計分析系統功能模塊圖 :5歡迎畫面主菜單保存與讀取輸顯查刪添修統退入示找除加改計出功功功功功功功程能能能能能能能序按ID修 改修 改修改基修改職按姓修 改修 改修 改工作程序分析輸入:輸入職工工資資料通過結構體的數組來進行操作,先頭定義數組em ,先輸入需要輸入的職工人數m,然后進入循環, 每次循環將各項輸入結構體數組對應項的對應成員中,當循環次數等于人數時,完成全部員工的資料輸入,退出循環。同時將數據儲存在ckerk_list 文件中并自動保存6至磁盤。注:如首次使用,尚未輸入數據,請先輸入數據。輸入的數據將自動保存。再次選擇輸入功能時原數據。
4、將被覆蓋。保存:將輸入的資料存入磁盤讀取文件 clerk_list ,若文件不存在,打印“打開失敗并退出。若存在,則通過循環語句將輸入到結構體數組的數據逐個輸入磁盤。讀取:讀取磁盤中的資料打開文件 clerk_list ,若文件不存在,打印“打開失敗”并退出。若存在,讀取文件中的數據,并返回職工人數。顯示:顯示職工工資資料先通過讀取函數的返回值確定職工人數 m,再通過循環將員工工資資料逐個打印, 當循環次數達到 m 時退出循環。其中總工資由程序計算,總工資 =基本工資 +職務工資 +津貼 -醫療保險 -公積金刪除:刪除某員工的資料打印員工資料并提示輸入要刪除職工的姓名,輸入后若該職工不存在則打。
5、印“查無此人”;若存在,則顯示該職工資料并詢問是否確定刪除。若確定,則刪除。刪除時,通過對比輸入的姓名與資料中的姓名做對比從而確定要刪除的項 i,從第 i 項開始,將后一項的各成員的值賦給前一項各對應的成員,完成對第 i 項的刪除。添加:添加新的員工資料而不覆蓋原有資料打印原有職工資料,詢問要添加的職工人數并詢問是否確定添加。逐個逐項輸入員工信息,之后程序計算其總工資。完成后顯示“添加成功” ,打印新的員工資料并自動保存。添加的方法為: 定義一個相同類型的結構體數組, 將原有項復制后增添新的項, 并保存新的數組。查找:按 ID 好查詢與按姓名查找員工資料根據提示輸入要查詢的 ID 號或姓名,程。
6、序通過循環語句將輸入的數字與以保存的結構體數組中的數據對比,若相同,則打印“已找到”及該員工的資料;當循環次數等于人數7時結束循環,若至結束循環時也沒有找到相同的,則打印“查無此人”。修改:修改特定員工的特定資料打印員工信息并提示輸入要修改資料的職工姓名。按提示確定要修改,確定要修改的項目,輸入要修改成的結果并將該結果賦給對應項的對應成員,完成對特定職工特定項目的修改。統計通過循環對結構體數組中的每一項經行統計,計算工資總額為,將工資總額除以人數計算出平均工資。根據每名職工的資料計算基本工資、職務工資、津貼之和在1000-1500圓 1500-2000 圓 2000 圓以上的員工占總員工的百分。
7、比。三源程序代碼(附各部分解釋)#include#include#include#include#define N 100struct clerkint num;/ID 號char name20;/姓名int jbgz;/基本工資int zwgz;/職務工資int jt;/ 津貼int yb;/醫療保險int gjj;/公積金 /int total;/總工資8em100;void menu();void input();void save(int);void display();void del();void add();void search();void search_num();void。
8、 search_name();void modify();void sta();void start(); /* 定義各函數 */void start() / 開始界面system(cls);/ 清屏system(color 1E); / 設置文字顏色為黃色背景色藍色printf(nnnnnn);printf(*);printf(*歡迎使用工資管理系統*);printf(*nnnnn);printf(tttt制作 : n);printf(tttt2011年 6 月 nnnn);9printf(ttt* 按任意鍵進入 *n);void menu() / 菜單界面system(cls);syste。
9、m(color 1F);printf(* 菜單 *nn);printf(1輸入nn);printf(2顯示nn);printf(3查找nn);printf(4刪除nn);printf(5添加nn);printf(6修改nn);printf(7統計nn);printf(8退出nn);printf( 說明: * 如首次使用尚未輸入數據請先輸入數據n* 輸入的數據將自動保存 n* 再次選擇輸入功能時原數據將被覆蓋nn);void input()/* 錄入函數 */10int i,m;system(cls);printf( 職工人數 (1-100):n);scanf(%d,&m);for (i=0;i。
10、=1&t8|c=1000)a+;if(emi.total1500&emi.total2000)c+;printf(nn工資總額為: %dn,sum);printf( 平均工資為: %dn,sum/m);printf(n基本工資、職務工資、津貼之和n);printf( 在 1000-1500 圓的員工占總員工的百分之 %dn,a*100/m); printf( 在 1500-2000 圓的員工占總員工的百分之 %dn,b*100/m); printf( 在 2000 圓以上的員工占總員工的百分之 %dn,c*100/m);printf(nn按任意鍵繼續 );getch();menu();void。
11、 main()/ 主函數int n,button;char a;start();getch();menu();doprintf( 功能選擇 (1-8):n);scanf(%d,&n);26if(n=1&n=7)button=1;break;elsebutton=0;printf( 您輸入有誤 ,請重新選擇 !);while(button=0);while(button=1)switch(n)case 1: input();break;case 2: display();break;case 3: search();break;case 4:del();break;case 5: add();b。
12、reak;case 6:modify();break;case 7:sta();break;case 8:exit(0);break;default :break;getchar();printf(n);27printf( 按任意鍵繼續 n);getch();system(cls);/* 清屏 */menu(); /* 調用菜單函數 */printf( 功能選擇 (1-8):n);scanf(%d,&n);printf(n);運行結果及截圖歡迎畫面菜單28輸入功能顯示功能29統計功能刪除功能30添加功能修改功能31心得體會通過這兩周的 c 語言課程設計, 我加深了對 c 語言程序設計的理解, 使自己的操作更加熟練,發現了自己的不足,為自己今后的繼續學習指明了方向。在這次課程設計中,我鞏固所了學過的知識,能用匯編語言熟練地運用順序、選擇、循環三大結構,進一步掌握結構體數組的使用, 文件函數的使用, 掌握了子程序的定義及調用。 并在調試過程中不斷發現與改正錯誤,完善算法,改進用戶體驗等等。調試索然繁瑣而艱苦,但極大的促進了我編程能力的提高。由于自己目前能力有限, 該程序還有諸多不足, 感謝指正。 感謝老師的悉心教導與細致的幫助。雖然 c 語言的課程與課程設計都已結束,但通過這次課程設計我也發現了差距,并將在未來努力學習,積極實踐,使自己能真正的掌握運用c 語言。參考文獻3233。
總結
以上是生活随笔為你收集整理的c语言 输入职工工资资料,通过结构体的数组来进行操作 报告,c语言课程设计报告-职工工资管理系统...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: sping 注解
- 下一篇: Computing Curricula