一:資訊功能模組結構塊圖
職工資訊管理系統:
1.檔案
a.匯入檔案
b.儲存檔案
c.退出系統
d.關於我們
2.入錄
3.修改
4.插入
a.乙個員工
b.乙個部門
5.刪除
a.乙個部門
b.乙個員工
c.乙個職稱
d.所有資訊
6.查詢
a.按卡號查
b.職工資訊
c.按職稱查
d.各種工資
7.統計
a.員工數目
b.年齡分布
c.各種工資
d.稅金總額
8.排序
a.應發工資
b.卡號排序
c.按繳稅排
d.按年齡排
二:結構設計和說明
由於程式是職工資訊管理系統,涉及的東西比較多,專案複雜且相互關係交叉,程式中為了把這些表示清楚,總共定義了五個結構體,其中三個是主要的,包括struct fac,struct work和struct mon結構陣列,構成十字交叉鍊錶,其中:
struct fac型結構陣列是主鏈,它負責部門的確定和統計,其他的分支(職工,職工的資訊)都是從這裡展開。它的struct fac *head是指向下個分支陣列。
struct work型結構陣列是包含職工的各方面的完整的資訊,包括姓名,性別,年齡,工資等等。同樣它的*first指向職工的每個月的資訊狀況,*next則指向下乙個職工。
struct mon型結構陣列是職工每個月資訊狀況的具體體現,在這裡可以找到乙個職工幾乎所有乙個月的資訊。
剩下兩個結構是為了方便程式的執行而設立的,比如在這兩個結構陣列中設定變數類計算部門和職工的數目,或者為了輔助函式的需求。
三;結構流程圖
說明:本程式採用了簡單的圖形介面,看起來更加友好,同時功能相對來說也是具有一定的實踐性,具體的將在感受中再談。
開啟程式後,介面是熟悉的,用法和turboc類似,可以用選單欄上標的字母來快速啟動需要的選項,快捷鍵的引入讓操作更加方便。進入程式首先要新建乙個檔案即新鍊錶,可啟用「錄入」功能鍵並按要求把每一項都填好,這樣就建好了乙個新職工資訊庫,以後可以對它進行新增,刪除,查詢,統計等等,由於職工的資訊量比較大,所以在輸入的時候請保持耐心,在錄入的時候會反覆提示是否繼續錄入,可以選是也可以選否,如果選否也可以在新增選單裡面在以後新增。(注意一定要按要求輸入)
本程式基本是在呼叫乙個個函式,繁多的函式是程式的基礎,每個函式的功能和用途我想在這裡就沒必要解釋了,每個功能的實現都是函式支援的結果,用了程式就會體會到函式的強大功能!
下面附些程式的截圖:(不知道為什麼老是截不了圖,所以沒辦法了)
四:我的感受
c語言的課程設計暑假之前就布置下來了,暑假本來就是該是休息的時間,老師也說學校這樣做是難為學生的,於是也許是這個原因自我安慰,暑假把課設放在了一邊,直到開學了才發覺時間不夠了。可是緊張的學習使得我不得不把重心放在平時的學習課程上,於是c課設再一次被放在了一旁,終於國慶也來了,學校通知第7週交這才恍然大悟,似乎來不及了。
時間短而倉促,僅有的一些時間,我甚至逃課去做課設,可是學c的事情都已經是幾個月前的事情了,大家都忘的差不多了,所以剛開始特別吃力,甚至忘了include前面還要加個#,於是又拿起書看,在網上到處找資料,慢慢找回了點感覺,儘管如此對於函式,鍊錶,結構始終還上有點模糊,我就看點例項去理解,自己寫的函式可能還存在很大不足(自己執行程式的時候頻繁出錯就說明了這個問題),很多方面需要去修改,只是現在沒有時間了,還有有些函式還沒寫出來或者沒有連線到圖形介面上去,這些都是需要我去完善的,c我總覺得是有趣而又重要的,老師說這可是我們吃飯的傢伙,儘管有點搞笑的意思,可是我把它看的蠻重的,心裡想歸想,人都有惰性,離做到還是有點距離的。
如果我有再說一次做課設的機會,我一定會抓緊時間在第一時間完成,之後去玩又沒牽掛,這次弄的這麼狼狽,程式做的都拿不出手,實在是個很大的失敗,當然不是在說自己本來能力有多高,我知道現在有的同學程式做的特別好也不是沒有,這是一次教訓,做程式是這樣,做人也是一樣的,拖拖拉拉是做不了大事情的,我想我經過這件事情學到了這些東西,不單是我的課程學到的東西,還有我生活的啟示。
最後希望老師能夠給我一次機會,完成這次課程設計的任務,今後的任務我會很努力去完成的,請相信我。
完)五:附件---職工資訊管理系統原**
#include
#include
#include
#include
#include
#define clean 5clean fare */
#define television 10 /* tv fare */
#include記憶體操作位址*/
#include /*動態位址分配函式*/
#include /*字元操作函式*/
#include /*圖形操作*/
#include /*字串函式*/
#define n 3
#define key_down 0x50
#define key_up 0x48
#define key_right 0x4d
#define key_left 0x4b
#define key_esc 0x01
#define key_alt_f 0x21
#define key_alt_x 0x2d
#define key_enter 0x1c
#define key_f 0x21
#define key_i 0x17
#define key_e 0x12
#define key_s 0x1f
#define key_d 0x20
#define key_q 0x10
#define key_c 0x2e
#define key_p 0x19
#define key_space 0x39
#define key_f10 0x44
void jihuocaidan(int a,int b);
void hanzishuru(int x,int y,int color,char *mid);
void xialacaidan(int x,int y,int m,int n,int t填充矩形框顏色*/
void whitehanzimenu (int j,char *red,char *green,char *hot重新輸出文字*/
void whitehanzixiala(char *menu,int i,int x,int y,int b,int j);/*調整下拉列表的變化*/
file *hzk_p;
void open_hzk(void);
void get_hz(char incode,char bytes);
void dishz(int x,int y,char cade,int color);
struct mon;
struct dep;
struct fac;
struct workers{
int months_total;
C語言旅館資訊管理系統
題目 旅店資訊管理系統 小組成員 閆若琳戴雨晨馬淵沐張子飛李闖 王浩崔以博孫浩浩李春普溫健成 include include include include define min 1 define max 30 define len sizeof struct hotel用len代替結構體的 長度 ...
實驗裝置資訊管理系統C語言
題目要求 實驗裝置資訊包括 裝置編號,裝置種類 如微機,印表機,掃瞄器等 裝置名稱,裝置 裝置購入日期,是否報廢,報廢日期等。試設計一實驗裝置資訊管理系統,使之能提供以下功能 1.能夠完成對裝置的錄入和修改。2.對裝置進行分類統計。3.裝置的查詢。需求分析 實驗室裝置資訊用檔案儲存,提供檔案的輸入輸...
C語言圖書資訊管理系統
江西科技師範大學 課程報告 課程名稱 程式設計實踐 專業班級 學生姓名 學號任課教師 學期 課程報告任務書 成績評定教師 1 需求分析 隨著當今社會發展,資訊化水平逐步提高,對圖書管理有了新的要求,因此,編寫乙個資訊管理系統是十分必要的。為了滿足圖書管理的要求,通過計算機技術給圖書管理人員和讀者借 ...