演示文稿主題怎么設置啊(怎么將演示文稿主題設置)
1315
2022-05-29
內蒙古科技大學
本科生課程設計說明書
題 ???目:C語言課程設計
—— ?職工信息管理系統
學生姓名:
學 ???號:
專 ???業:計算機科學與技術
班 ???級:一班
指導教師:胡偉健
日 ???期: 2020年12月29日
內蒙古科技大學課程設計任務書
課程名稱
C語言課程設計
設計題目
職工信息管理系統
指導教師
胡偉健
時間
2020.12.29
目 ???錄
內蒙古科技大學課程設計任務書
第一章
需求分析
1.1
引言
1.2
任務概述
1.3
數據描述
3
1.4
功能需求
4
1.5
性能需求
4
1.6
運行需求
1.7
任務計劃
5
第二章
概要設計
2.1
總體設計
2.2
數據類型設計(或數據結構設計)
2.3
接口設計
//
函數聲明
7
2.4
運行界面設計
7
第三章
詳細設計
8
3.1
輸入模塊設計
8
3.2
輸出模塊設計
9
3.3
修改
模塊設計
1
2
3.4
排序模塊設計
1
2
3.5
保存及讀取模塊設計
1
4
第四章
測試分析
1
4
4.1
測試程序執行情況
1
7
4.2
出現的問題和解決的方法
1
8
第五章
用戶手冊(可選)
1
9
5.1
使用說明
2
0
5.2
運行說明
2
0
第六章
課程設計總結
2
1
附錄:程序代碼
2
2
參考文獻
3
1
致謝
3
1
第一章 ?需求分析
1.1?引言
本文用C語言在編譯器上架構一個職工管理系統系統,本文從理論和實踐上來設計和使用職工管理。并對功能進行了詳細的總結,以實現功能更全面。而后對系統的顯示頁面,函數的設計進行了較為詳細的講解。
1.2?任務概述
職工信息包括職工號、姓名、性別、出生年月、學歷、職務、工資、住址、電話等(職工號不重復)。試設計一職工信息管理系統,使之能提供以下功能:
職工信息錄入功能(職工信息用文件保存)--輸入
職工信息瀏覽功能 --輸出
查詢或排序功能:(至少一種查詢方式) ?--算法
按工資查詢 ???●按學歷查詢等
職工信息刪除、修改功能(任選項)
1.3?數據描述
職工管理系統用下面五個功能模塊編寫,每個模塊執行不同的功能,體現了模塊化設計的思想。下面五個模塊都是利用C語言文件,向文件中追加數據、修改數據、查詢數據和刪除數據。
輸入:可以輸入職工信息,按順序輸入 職工號、姓名、性別、出生年月、學歷、職務、工資、住址、電話等(職工號不重復)。
輸出:也是用通過循環依次輸出數據,即輸出所有職工信息記錄。
刪除:輸入你要刪除職工信息后,系統會自動刪除他/她的職工信息。
查找:為了滿足用戶的實際需求,設計了兩種查詢方式可以用工號、學歷兩種方式查找職工信息記錄。通過比較字符串是否相同來判別是否找到相關信息,找到后就把文件中的數據賦給對應的變量,再把變量所帶的值輸出到屏幕上。
1.4?功能需求
1) ??輸入功能:可以多次完成多個職工所有信息。
2) ??瀏覽功能:可以一次性瀏覽職工的所有信息。
3) ??查詢功能:可以按職工工號和學歷兩種方式查詢。
4) ??刪除功能:可以對職工的信息進行刪除。
5) ??排序功能:可以按職工號進行降序排序。
6) ??退出本系統
1.5?性能需求
1) ??硬件環境
處理器:Inter CORE I5或是更高。
內存:128MB。
硬盤空間:20MB。
2) ??軟件環境
操作系統:Windows 7/ 8或是Windows 10
1.6?運行需求
1) ??運行環境
運行環境:CodeBlocks/Visual?C++6.0
1.7?任務計劃
第二章?概要設計
2.1?總體設計
(1)系統以菜單方式工作
(2)職工信息錄入功能(職工信息用文件保存)--輸入
(3)職工信息瀏覽功能--輸出
(4)職工信息查詢功能--算法
查詢方式:按學歷查詢/按工資查詢
(5)職工信息刪除、修改功能
2.2?數據類型設計(或數據結構設計)
2.2.1.添加信息模塊:?void A( Node *worker )
采用尾插法,先建立鏈表和頭結點,新增加一個節點,輸入職工的所有信息,將新增的節點連接在鏈表的尾端。
2.2.2.修改信息模塊:void B( Node *worker )
找到要修改的職工信息,刪除這一個節點,然后新建一個節點,輸入要修改的信息,并儲存到新的節點中,將新增的節點放在原來刪除節點的位置。
2.2.3.顯示輸出模塊:void C( Node *worker )
先新建一個指針指向頭結點,判斷指針域是否為空,若為空,輸出“沒有信息可以顯示”;若不為空,則輸出他的指針域所指向的節點儲存的信息,并將指針向后移一個節點,直到P指向空,這樣就輸出了所有的職工信息。
2.2.4.查找信息模塊:void D( Node *worker )
分為兩種查找方法,按職工號查找和按姓名查找。
按職工號查找: 輸入職工號,先新建一個指針指向頭結點,判斷指針域是否為空,若為空,輸出“沒有資料可以查詢”;若不為空,則判斷他的指針域所指向的節點儲存的職工號是否與輸入的職工號相同,若相同,則輸出該職工所有的信息,并將指針向后移一個節點,再次進行判斷,直到P指向空,這樣就查找輸出了所有匹配的職工信息。
按姓名查找:輸入姓名,先新建一個指針指向頭結點,判斷指針域是否為空,若為空,輸出“沒有資料可以查詢”;若不為空,則判斷他的指針域所指向的節點儲存的職工姓名是否與輸入的職工姓名相同,若相同,則輸出該職工所有的信息,并將指針向后移一個節點,再次進行判斷,直到P指向空,這樣就查找輸出了所有匹配的職工信息。
2.2.5.刪除信息模塊:void E( Node *worker )
查找到要刪除的職工信息節點,刪除這一個節點,并將它的前驅節點的指針域指向后繼節點。
2.2.6.保存職工信息模塊:void?G(Node *worker)
新建一個指針指向頭結點,判斷指針域是否為空,若為空,輸出“沒有記錄!”,若不為空, fprintf()格式寫函數 ,將職工信息以%s的格式寫入指針指向的文件中。
2.2.7.讀取信息模塊:void F( Node *worker )
打開文件,fscanf()格式讀函數,以%s 的格式從文件中讀取數據存入節點中。
2.2.8定義結構體:
結構體struct worker用于存放存放員工的資料,包括員工的基本信息:工號,姓名,年齡,學歷,工資,住址,電話號碼。
struct workers
{
char jobno[15]; ?//職工號
char name[15];
char sex[15];
char birthday[15];
char degree[15];//學歷
char zhiwu[15];
char gongzi[15];
char addr[15];
char tel[15];};
2.3?接口設計
表2.1:函數列表
函數名
函數格式 ?//即函數首部
函數功能
A
Void A()
錄入職工信息
B
Void B()
修改職工信息
C
Void C()
瀏覽職工信息
D
Void D()
查詢職工信息
F
Void F()
刪除職工信息
E
Void E()
讀取職工信息
G
Void G()
保存職工信息
第二章?用戶手冊(可選)
5.1?使用說明
運行程序會顯示菜單根據菜單輸入編號實現相應功能:
1.?輸入職工信息
2.?修改職工信息
3.?瀏覽職工信息
4.?查詢職工信息
5.?刪除職工信息
6.?讀取職工信息
7.?退出
第三章?課程設計總結
通過此次職工管理系統,讓我熟悉了軟件開發的流程,相信在以后的工作中我能在最短的時間內投入到大的程序開發項目中。通過這次課程設計使我們懂得了理論與實際相結合是很重要的,只有理論知識是遠遠不夠的,只有把所學的理論知識與實踐相結合起來,從理論中得出結論,才能真正為社會服務,從而提高自己的實際動手能力和獨立思考的能力。在設計的過程中遇到問題,可以說得是困難重重,這畢竟第一次做的,難免會遇到過各種各樣的問題,同時在設計的過程中發現了自己的不足之處,對一些前面學過的知識理解得不夠深刻,掌握得不夠牢固,比如說結構體,指針,鏈表 …… 通過這次課程設計之后,我把前面所學過的知識又重新溫故了一遍。
回顧起此次課程設計,至今我仍感慨頗多,的確,從拿到題目到完成整個編程,從理論到實踐,在這些日子里,我學到很多很多的東西,不僅鞏固了以前所學過的知識,而且學到了很多在書本上所沒有學到過的知識。通過這次課程設計使我懂得了理論與實際相結合是很重要的,
我總結出了一點點的經驗如下:
①要對系統的功能和要求做出詳細的分析,并合理分解任務。
②把分解出來的子任務,做給一個相對獨立的模塊。
③在設計一個模塊之前,要簡單構想一下總界面的顯視情況。
④針對構想出來的界面進行程序的編寫。
C 語言 項目管理 ProjectMan
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。