




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、成績南京工程學(xué)院課程設(shè)計(jì)說明書(論文)題 目 人員管理信息系統(tǒng) 課 程 名 稱 面向?qū)ο蟪绦蛟O(shè)計(jì)B 院(系、部、中心) 通信工程學(xué)院 專 業(yè) 多媒體通信 班 級(jí) 媒體通信111 學(xué) 生 姓 名 崔 學(xué) 號(hào) 208110502 設(shè) 計(jì) 地 點(diǎn) 信息樓C322 指 導(dǎo) 教 師 郭 麗 紅 設(shè)計(jì)起止時(shí)間: 2013年 5月 27日至 2013年 5月31日目 錄1系統(tǒng)設(shè)計(jì)的目的和意義82系統(tǒng)總框架圖83軟件功能描述84軟件代碼的設(shè)計(jì)841數(shù)據(jù)結(jié)構(gòu)描述與定義942模塊設(shè)計(jì)95軟件使用說明96測(cè)試結(jié)果與分析97比較有特色的函數(shù)98存在的不足與對(duì)策99課程設(shè)計(jì)總結(jié)9附錄:源程序清單9 (正文,宋體,小四,
2、1.5倍行距,每個(gè)段落開頭空兩格)(字?jǐn)?shù)要求:5000字左右,頁數(shù)10頁左右。)課程設(shè)計(jì)題目1 系統(tǒng)設(shè)計(jì)的目的和意義 隨著現(xiàn)代高科技的迅速發(fā)展,計(jì)算機(jī)技術(shù)也有了突飛猛進(jìn)的快速發(fā)展,因此為各個(gè)行業(yè)的普及應(yīng)用奠定了基礎(chǔ)。由于學(xué)校教師學(xué)生的數(shù)目眾多,傳統(tǒng)的手工作業(yè)已經(jīng)不再適合學(xué)校統(tǒng)計(jì)人員信息的需要。傳統(tǒng)的手工作業(yè)要處理巨額的數(shù)據(jù),由于人員不停地改動(dòng),例如教工的調(diào)職、離職、新教師的加入,學(xué)生的入學(xué)、畢業(yè)等,人事部門要不停的更新數(shù)據(jù),進(jìn)行抄寫。由于數(shù)據(jù)龐大,難免會(huì)出現(xiàn)錯(cuò)誤,這對(duì)于員工管理非常不利。而利用計(jì)算機(jī)技術(shù)可以方便的、準(zhǔn)確的、動(dòng)態(tài)的對(duì)企業(yè)內(nèi)部員工進(jìn)行管理,減輕了人事部門的任務(wù),節(jié)約人力資源,降低了
3、企業(yè)的成本?;谟?jì)算機(jī)技術(shù)的優(yōu)越性,幾乎所有的企業(yè)都使用計(jì)算機(jī)技術(shù)來實(shí)現(xiàn)對(duì)員工基本信息的管理。本系統(tǒng)將利用計(jì)算機(jī)技術(shù)模擬實(shí)現(xiàn)對(duì)企業(yè)員工的基本信息管理,主要實(shí)現(xiàn)對(duì)人員基本信息的管理,包括教師的姓名、年齡、籍貫、職稱、學(xué)歷、工作日期,學(xué)生的姓名、學(xué)號(hào)、年齡、籍貫、入學(xué)日期。如果有新人員加入該學(xué)校,可在添加新人員模塊進(jìn)行添加新人員操作。如果有人員辭職或退休,學(xué)生畢業(yè)或退學(xué),也可以進(jìn)行刪除操作,同時(shí)可以通過列表查看所有人員的資料,也可以單獨(dú)查詢某個(gè)人員的信息,若是發(fā)現(xiàn)某個(gè)人員的信息有誤,也可以對(duì)進(jìn)行修改操作。2系統(tǒng)總框架圖歡迎窗口登錄窗口選擇窗口教師信息全體學(xué)生信息學(xué)生信息全體教師信息全體學(xué)生信息窗口
4、全體教師信息窗 口增 加查 詢刪 除修 改刪 除查 詢?cè)?加修 改3軟件功能描述(或設(shè)計(jì)目標(biāo)或需求分析)對(duì)問題的描述應(yīng)避開具體的算法和涉及的數(shù)據(jù)結(jié)構(gòu),描述系統(tǒng)實(shí)現(xiàn)功能及達(dá)到的目標(biāo)。首先增加一個(gè)對(duì)話窗口,插入自己設(shè)計(jì)好的圖片,做一個(gè)人員信息管理系統(tǒng)的界面,然后級(jí)聯(lián)一個(gè)窗口,做登錄界面。實(shí)現(xiàn)用戶名/密碼的登錄。登錄界面:通過輸入正確的用戶名和密碼,進(jìn)入到人員管理系統(tǒng)的選擇界面窗口。通過選擇四個(gè)Button按鈕,分別級(jí)聯(lián)到教師信息窗口,學(xué)生信息窗口,全體教師信息窗口,全體學(xué)生信息窗口。查詢:通過Button按鈕,編寫查詢代碼??梢酝ㄟ^輸入關(guān)鍵字對(duì)人員信息進(jìn)行查詢。添加:通過Button按鈕,編寫添加
5、代碼??梢暂斎胂鄳?yīng)的人員信息加入到數(shù)據(jù)庫中。刪除:通過Button按鈕,編寫刪除代碼??梢詣h除掉需要?jiǎng)h除的人員信息。修改:通過Button按鈕,編寫修改代碼。可以對(duì)查詢到的人員信息進(jìn)行信息修改。退出:控件自帶的Button按鈕,可以退出界面。全體教師信息,和全體學(xué)生信息:窗口是通過Listctrl(列表控件)實(shí)現(xiàn)的,在新建的類中添加一個(gè)oninitdialog()函數(shù),然后在函數(shù)中寫初始化代碼,以及數(shù)據(jù)庫中信息映射到列表中的代碼,實(shí)現(xiàn)全體人員信息的查詢,便于管理員管理。4軟件代碼的設(shè)計(jì)說明算法(程序)中用到的所有各種數(shù)據(jù)結(jié)構(gòu)的描述與定義,核心模塊設(shè)計(jì),每個(gè)模塊的算法描述及流程圖(用WORD,或
6、畫圖板,或Visio畫圖軟件)建議用Visio。流程圖要規(guī)范(有開始,結(jié)束,一個(gè)入口,一個(gè)出口)。41數(shù)據(jù)結(jié)構(gòu)描述與定義所用的到的主要數(shù)據(jù)結(jié)構(gòu)的描述,標(biāo)準(zhǔn)C+語言定義數(shù)據(jù)結(jié)構(gòu)void CCQWDlg:OnOK() /在類CCQWDlg中定義用戶登錄函數(shù)void studentinfo:OnSadd() /在類studentinfo中定義增加函數(shù)void studentinfo:OnSearch()/在類studentinfo中定義查詢函數(shù)void studentinfo:OnSchange()/在類studentinfo中定義修改函數(shù)void studentinfo:OnSdelete()/在
7、類studentinfo中定義刪除函數(shù)void teacherinfo:OnSearch2()/在類teacherinfo中定義查詢函數(shù)void teacherinfo:OnAdd2() /在類teacherinfo中定義增加函數(shù)void teacherinfo:OnDelete2()/在類teacherinfo中定義刪除函數(shù)void teacherinfo:OnChange2()/在類teacherinfo中定義修改函數(shù)BOOL allstu:OnInitDialog() /在類allstu中定義InitDialog函數(shù)BOOL alltea:OnInitDialog() /在類alltea
8、中定義InitDialog函數(shù)42模塊設(shè)計(jì)系統(tǒng)共分幾個(gè)模塊,每個(gè)模塊的算法描述及流程圖(核心模塊)。1、登錄界面流程圖輸入用戶名和密碼用戶名與密碼符合登錄成功密碼錯(cuò)誤結(jié) 束開 始2、查詢模塊流程圖開 始輸入關(guān)鍵字查到關(guān)鍵字打開數(shù)據(jù)源顯示記錄No data!結(jié) 束3、增加模塊流程圖開 始輸入記錄打開數(shù)據(jù)源將記錄錄入數(shù)據(jù)庫Success結(jié) 束4、修改模塊流程圖開 始打開數(shù)據(jù)源輸入關(guān)鍵字查到關(guān)鍵字修改記錄No dataSuccess結(jié) 束5、刪除模塊流程圖開 始打開數(shù)據(jù)源輸入關(guān)鍵字查到關(guān)鍵字No data!刪除記錄結(jié) 束6、列表控件(listctrl控件)流程圖開 始增加列表控件增加oninitdi
9、alog()函數(shù) 初始化函數(shù)打開數(shù)據(jù)源指針指向第一條記錄存在記錄指針指向下一條記錄將記錄顯示到列表控件結(jié) 束5軟件使用說明使用本軟件之前必須先到數(shù)據(jù)源里映射下數(shù)據(jù)庫,使它們連接起來。登錄時(shí) 先進(jìn)入登錄界面的程序查詢一下登陸的用戶名和密碼。6測(cè)試結(jié)果與分析按系統(tǒng)功能描述(設(shè)計(jì)目標(biāo))測(cè)試軟件運(yùn)行是否正確,測(cè)試數(shù)據(jù)的選擇要代表性,列出所有測(cè)試用的輸入數(shù)據(jù)和相應(yīng)的輸出數(shù)據(jù)以及測(cè)試結(jié)果。原始數(shù)據(jù)庫:程序運(yùn)行結(jié)果: 登錄界面:按登錄鍵進(jìn)入選擇界面:以教師信息查詢?yōu)槔?,輸入關(guān)鍵字趙一,點(diǎn)擊查詢:點(diǎn)擊確定鍵,結(jié)果如下圖:在選擇界面點(diǎn)擊全體教師信息或全體學(xué)生信息如下:7比較有特色的函數(shù) void CCQWDlg
10、:OnOK() / TODO: Add extra validation herethis->UpdateData(true);if(this->m_name="cuiqianwen" && this->m_passward="4321")select dlg;dlg.DoModal();elseMessageBox("登錄有誤");CCQWDlg dlg;dlg.DoModal();BOOL allstu:OnInitDialog() CDialog:OnInitDialog();/ TODO: A
11、dd extra initialization herem_list.InsertColumn(0,"姓名",LVCFMT_LEFT,100);m_list.InsertColumn(1,"年齡",LVCFMT_LEFT,100);m_list.InsertColumn(2,"學(xué)號(hào)",LVCFMT_LEFT,100);m_list.InsertColumn(3,"籍貫",LVCFMT_LEFT,100);m_list.InsertColumn(4,"入學(xué)日期",LVCFMT_LEFT,100);
12、 / return TRUE unless you set the focus to a control / EXCEPTION: OCX Property Pages should return FALSE student s(&d1);CString str="select * from student"s.Open(student:dynaset,_T(str); while(!s.IsEOF() int nIndex = m_list.GetItemCount(); nIndex = m_list.InsertItem(nIndex, (char*)(LPC
13、TSTR)str); m_list.SetItemText(nIndex,0,s.m_name);m_list.SetItemText(nIndex,1,s.m_age); m_list.SetItemText(nIndex,2,s.m_number); m_list.SetItemText(nIndex,3,s.m_birth_place);m_list.SetItemText(nIndex,4,s.m_entrance_time); s.MoveNext(); s.Close();return TRUE;8 存在的不足與對(duì)策 系統(tǒng)相對(duì)來講還是較簡潔的,若是要進(jìn)行修改操作的話,需先進(jìn)行查找,
14、然后在每一個(gè)記錄上修改,這樣實(shí)行起來比較麻煩,可以設(shè)置一個(gè)彈出窗口,在彈出的窗口上修改記錄。另外,查找時(shí)僅僅可以使用主鍵進(jìn)行查找,例如學(xué)生僅僅可以通過學(xué)號(hào)進(jìn)行查找某個(gè)學(xué)生信息,教師僅僅可以通過姓名查找某個(gè)教師信息,我們可以通過多寫幾個(gè)語句,可以通過其他的方式查找。9課程設(shè)計(jì)總結(jié)總結(jié)可以包括 : 課程設(shè)計(jì) 過程的收獲、遇到問題、遇到問題解決問題過程的思考、程序調(diào)試能力的思考、對(duì)C+這門課程的思考、在課程設(shè)計(jì)過程中對(duì)C+課程的認(rèn)識(shí)等內(nèi)容本次課程設(shè)計(jì),使我加深了對(duì)C+面向?qū)ο蟪绦蛟O(shè)計(jì)的理解。通過本次課程設(shè)計(jì),我學(xué)到了很多知識(shí),C+面向?qū)ο笫峭ㄟ^類來實(shí)現(xiàn)的。由于我們對(duì)vcMFC編程不熟悉,只通過上課看
15、老師演示一遍是不夠的,所以剛開始感覺無從下手,一片茫然,所以就先看了一些教程,再看了一些關(guān)于MFC的操作,然后自己嘗試做一些重要的模塊,比如窗口的級(jí)聯(lián),然后熟悉了MFC。在做課程設(shè)計(jì)的時(shí)候,我遇到LE 一些問題。有些問題,和同學(xué)一討論就可以解決,比如星期一的時(shí)候,我們就嘗試做窗口的級(jí)聯(lián),怎么在主窗口之前插入一個(gè)對(duì)話框,做了好多遍都不成功,運(yùn)行時(shí)都是直接跳出主窗口,然后上網(wǎng)查了一下資料,在MAINFARM.CPP中插入對(duì)話框類的對(duì)象,解決了問題。我們?cè)诰W(wǎng)上也搜尋解決問題的方法,許多問題都可以解決,比如列表框,即Listctrl控件的使用,也得到了解決。在這次課程設(shè)計(jì)中,我學(xué)到了很多知識(shí),不僅僅是
16、關(guān)于VC+的知識(shí),還學(xué)到了遇到困難不能光著急,要積極尋求解決問題的方法。要懂得和同學(xué)交流,然后去共同解決問題。也可以去網(wǎng)上搜尋解決該方案。畢竟一個(gè)人的能力有限,不可能一個(gè)人解決所有的問題。課程設(shè)計(jì)其實(shí)很能鍛煉學(xué)生解決問題的能力,可以提高我們對(duì)C+的整體認(rèn)識(shí)。在這次課程設(shè)計(jì)中我鍛煉了我的實(shí)際編程能力,以前我只是學(xué)習(xí)簡單的語法知識(shí),學(xué)習(xí)對(duì)面向?qū)ο蟮睦斫?,其?shí)只有在試驗(yàn)中,才能體會(huì)到它的模塊性,它的封裝性。這次課程設(shè)計(jì)的經(jīng)歷為以后的學(xué)習(xí)和工作積累了很多經(jīng)驗(yàn),受益匪淺。 這次課程設(shè)計(jì)是我獨(dú)立完成的,剛開始總是出現(xiàn)錯(cuò)誤,找不到解決的方法,然后就重新做,這讓我明白,編程需謹(jǐn)慎,程序中不允許出現(xiàn)任何小的錯(cuò)誤
17、,此外在幫助別人解決問題時(shí),也拓展了我自己解決程序中錯(cuò)誤的能力,怎么從提示錯(cuò)誤的語句中發(fā)現(xiàn)錯(cuò)誤的根源,并改正過來是很重要的。這次課程設(shè)計(jì)能夠做成功還是有成就感的,非常感謝老師給我們這次課程設(shè)計(jì)的機(jī)會(huì)。附錄:源程序清單編碼規(guī)范,符合軟件工程的要求(變量名,函數(shù)名見名知義,注釋規(guī)范占總程序行數(shù)的2/5)。CQW.CPP#include "stdafx.h" /CQW為工程文件名#include "CQW.h"#include "CQWDlg.h"#include "select.h" /select為選擇對(duì)話框的類名#
18、include "enter.h" /enter為歡迎窗口的類名#ifdef _DEBUG#define new DEBUG_NEW#undef THIS_FILEstatic char THIS_FILE = _FILE_;#endifBOOL CCQWApp:InitInstance()AfxEnableControlContainer(); enter d; /為了使在登錄窗口之前跳出歡迎界面d.DoModal();#ifdef _AFXDLLEnable3dControls();/ Call this when using MFC in a shared DLL#e
19、lseEnable3dControlsStatic();/ Call this when linking to MFC statically#endifCCQWDlg dlg;m_pMainWnd = &dlg;int nResponse = dlg.DoModal();if (nResponse = IDOK)else if (nResponse = IDCANCEL)return FALSE;CQWDlg.CPP#include "stdafx.h"#include "CQW.h"#include "CQWDlg.h"#i
20、nclude "select.h"#include "student.h"#include "afxdb.h"#ifdef _DEBUG#define new DEBUG_NEW#undef THIS_FILEstatic char THIS_FILE = _FILE_;CDatabase cc;#endifvoid CCQWDlg:OnOK() /用戶名、密碼登錄/ TODO: Add extra validation herethis->UpdateData(true);if(this->m_name="cu
21、iqianwen" && this->m_passward="4321")select dlg;dlg.DoModal();elseMessageBox("登錄有誤");CCQWDlg dlg;dlg.DoModal();以學(xué)生為例;#include "stdafx.h"#include "CQW.h"#include "studentinfo.h"#include "student.h"#ifdef _DEBUG#define new DEB
22、UG_NEW#undef THIS_FILEstatic char THIS_FILE = _FILE_;#endifint flag;CDatabase db;void studentinfo:OnSadd() /增加學(xué)生/ TODO: Add your control notification handler code herestudent s(&db);CString str="select * from student"s.Open(student:dynaset,_T(str);UpdateData(true);s.AddNew();s.m_number
23、=m_sno;s.m_age=m_sage;s.m_name=m_sname;s.m_birth_place=m_sbp;s.m_entrance_time=m_sin;s.Update();s.Close();AfxMessageBox("success");void studentinfo:OnSearch() /查找學(xué)生信息/ TODO: Add your control notification handler code herestudent s(&db);UpdateData(true);CString str="select * from s
24、tudent"s.Open(student:dynaset,_T(str);while(!s.IsEOF() if(m_sno=s.m_number) m_sname=s.m_name; m_sage=s.m_age;m_sbp=s.m_birth_place;m_sin=s.m_entrance_time; flag=1; break;else s.MoveNext(); if(flag=1) AfxMessageBox("success");else AfxMessageBox("no data");UpdateData(false);s.
25、Close();void studentinfo:OnSchange() /修改學(xué)生信息/ TODO: Add your control notification handler code here student s(&db);CString str="select * from student"s.Open(student:dynaset,_T(str);UpdateData(true);while(!s.IsEOF() if(m_sno=s.m_number) flag=1; break; else s.MoveNext();if(flag=1)s.Edit(
26、);s.m_number=m_sno; s.m_age=m_sage; s.m_name=m_sname;s.m_birth_place=m_sbp;s.m_entrance_time=m_sin; s.Update();AfxMessageBox("success");else AfxMessageBox("no data");s.Close();void studentinfo:OnSdelete() /刪除學(xué)生信息/ TODO: Add your control notification handler code herestudent s(&am
27、p;db);CString str="select * from student"s.Open(student:dynaset,_T(str);UpdateData(true); while(!s.IsEOF()if(m_sno=s.m_number)flag=1;break;else s.MoveNext();if(flag=1) s.Delete(); AfxMessageBox("success");elseAfxMessageBox("no data");s.Close();BOOL allstu:OnInitDialog() /用列表控件顯示全體學(xué)生信息 CDialog:OnInitDialog();/ TODO: Add extra initiali
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 遠(yuǎn)程辦公考勤流程
- 電子商務(wù)客戶投訴問題整改清單及整改措施
- 疫情期間幼兒園大班教師環(huán)境衛(wèi)生工作計(jì)劃
- 化工廠施工應(yīng)急預(yù)案組織機(jī)構(gòu)及職責(zé)
- 河南省安陽市2025屆九年級(jí)下學(xué)期第三次聯(lián)考數(shù)學(xué)試卷(含解析)
- 2025年幼兒園中班秋季班務(wù)目標(biāo)實(shí)施計(jì)劃
- 部編新人教版二年級(jí)下冊(cè)語文課前預(yù)習(xí)計(jì)劃
- 廣告?zhèn)髅斤L(fēng)險(xiǎn)控制部2025年度工作計(jì)劃
- 監(jiān)理機(jī)構(gòu)人員管理職責(zé)研究
- 燃?xì)馊霊舭踩鹿暑A(yù)防計(jì)劃
- 文化創(chuàng)意產(chǎn)品開發(fā)生產(chǎn)合作協(xié)議
- 乘除法練習(xí)題1000道助你攻克難關(guān)
- 焊工作業(yè)(初訓(xùn)、復(fù)審)培訓(xùn)課件
- 《工業(yè)企業(yè)節(jié)能減排培訓(xùn)》課件
- 2024年平?jīng)鰶艽h縣級(jí)醫(yī)療衛(wèi)生單位選調(diào)考試真題
- 第二單元 主題活動(dòng)一《我是聰明的消費(fèi)者》(說課稿)-2023-2024學(xué)年四年級(jí)下冊(cè)綜合實(shí)踐活動(dòng)內(nèi)蒙古版
- 醫(yī)院氧氣泄露應(yīng)急預(yù)案
- 2024年中國安全應(yīng)急產(chǎn)業(yè)發(fā)展研究報(bào)告
- 京東方測(cè)評(píng)試題及答案
- 園林工程分部(子分部)工程、分項(xiàng)工程劃分
- 2024年優(yōu)居房產(chǎn)加盟業(yè)務(wù)保密協(xié)議3篇
評(píng)論
0/150
提交評(píng)論