C課程設(shè)計——學生信息管理系統(tǒng)_第1頁
C課程設(shè)計——學生信息管理系統(tǒng)_第2頁
C課程設(shè)計——學生信息管理系統(tǒng)_第3頁
C課程設(shè)計——學生信息管理系統(tǒng)_第4頁
C課程設(shè)計——學生信息管理系統(tǒng)_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、課程設(shè)計說明書題目: 學生信息管理系統(tǒng)學院 :信息工程學院班級 :軟件 09-12011年1月21日X X 大學課程設(shè)計(論文)任務(wù)書課程名稱:面向?qū)ο蟪绦蛟O(shè)計課程設(shè)計學院: 信息工程學院班級:軟件 09-1學生姓名:X X X_學號: 0000指導教師:X XX一、題目學生信息管理系統(tǒng)二、目的與意義面向?qū)ο蟪绦蛟O(shè)計課程設(shè)計課程設(shè)計是計算機科學與技術(shù)專業(yè)實踐性環(huán)節(jié)之一,通過課程設(shè)計的綜合訓練可以使學生進一步理解和掌握面向?qū)ο蟪绦蛟O(shè)計課程的基本知識; 掌握面向?qū)ο蟪绦蛟O(shè)計的思路和方法;基本具有利用面向?qū)ο蟮姆椒ㄒ约癈+ 的編程思想來完成系統(tǒng)設(shè)計的能力。三、要求 (包括原始數(shù)據(jù)、技術(shù)參數(shù)、設(shè)計要求

2、、圖紙量、工作量要求等)1. 要求利用面向?qū)ο蟮姆椒ㄒ约癈+ 的編程思想來完成系統(tǒng)的設(shè)計;2. 要求在設(shè)計的過程中,建立清晰的類層次;3. 在系統(tǒng)中至少要定義一個類,類中要有各自的屬性和方法;4. 在系統(tǒng)的設(shè)計中,至少要用到面向?qū)ο蟮囊环N機制。四、工作內(nèi)容、進度安排1. 根據(jù)課程設(shè)計的要求,確定設(shè)計題目; ( 0.5 天)2.查找相關(guān)資料 ,進行應(yīng)用程序總體結(jié)構(gòu)、使用功能的設(shè)計;( 0.5 天)3.進行應(yīng)用程序的界面設(shè)計和源程序代碼的編寫;( 2.5 天)4. 設(shè)計說明書的撰寫、答辯( 1.5天)五、主要參考文獻1 C+語言程序設(shè)計(第三版) ,鄭莉,清華大學出版社 ,20042 C+程序設(shè)計

3、教程 ,錢能主編,清華大學出版社,1999.43 C+程序設(shè)計課程設(shè)計 ,劉振安,機械工業(yè)出版社, 2004.8審核意見系(教研室)主任(簽字)指導教師下達時間2011年1月17日指導教師簽字: _目錄前言 . . 1第一章系統(tǒng)概述 . . 21.1功能簡介 .21.2設(shè)計思路 .2第二章系統(tǒng)功能的分析和設(shè)計 . . 32.1初始錄入功能 .32.2添加函數(shù) .32.3刪除函數(shù) .32.4修改函數(shù) .32.5查詢函數(shù) .42.5.1按學號查詢 . . 42.5.2按姓名查詢 . . 42.6顯示函數(shù) .42.7退出系統(tǒng) .4第三章調(diào)試及運行結(jié)果 . . 53.1主菜單.53.2顯示功能 .53

4、.3增加功能 .53.4刪除功能 .63.5修改功能 .63.6查詢功能 .6第四章總結(jié) . .84.1遇到的問題及解決方法 .84.2收獲和體會 .8前言學生信息管理系統(tǒng),是針對學校人事處的大量業(yè)務(wù)處理工作而開發(fā)的管理軟件,是典型的管理信息系統(tǒng)。它是一個教育單位不可缺少的部分,它的內(nèi)容對于學校管理者來說是至關(guān)重要的,能有效的幫助學校和老師掌握學生的情況。在傳統(tǒng)模式下利用人工進行學生信息管理,存在著較多的缺點,如:效率底,保密性差,時間一長將產(chǎn)生大量的文件和數(shù)據(jù),更不便于查找,更新,維護等。諸如這些情況,令學校管理者對學生的信息管理帶來了很大困難,嚴重影響了教育工作者的工作效率。隨著科學技術(shù)的

5、不斷提高,使用日趨成熟的計算機技術(shù)來代替?zhèn)鹘y(tǒng)的人工模式,來實現(xiàn)學生信息的現(xiàn)代化管理,其強大的功能已為人們深刻認識,它已進入人類社會的各個領(lǐng)域并發(fā)揮著越來越重要的作用。作為計算機應(yīng)用的一部分,使用計算機對學生信息進行管理,具有著手工管理所無法比擬的優(yōu)點。例如:檢索迅速、查找方便、易修改、可靠性高、存儲量大、數(shù)據(jù)處理快捷、保密性好、壽命長、成本低等。這些優(yōu)點能夠極大地提高學生信息管理的效率,也是學校實現(xiàn)科學化、正規(guī)化管理的重要條件。因此,開發(fā)這樣一套管理軟件成為很有必要的事情。第一章系統(tǒng)概述1.1功能簡介本軟件是一個簡單的學校學生信息管理系統(tǒng),軟件窗口為DOS 頁面。學生信息管理系統(tǒng)的功能主要是實

6、現(xiàn)學校學生的信息化管理。通過學生信息管理系統(tǒng),教學管理人員可以實現(xiàn)對學生信息的增加、刪除、修改和查詢等操作。本系統(tǒng)最大的優(yōu)點就是操作簡便快捷等。1.2設(shè)計思路將學生信息定義為一個 student 類,在類中包含私有數(shù)據(jù)成員 int num、string name、 string sex、 string politic 、string address,分別表示學號、姓名、性別、政治面貌、家庭住址。公有成員函數(shù)包括set( ) ,add( ) ,del( ) ,change( ) ,research( ) ,show( )分,別用來實現(xiàn)對學生信息的數(shù)據(jù)初始錄入、增加數(shù)據(jù)、刪除數(shù)據(jù)、修改數(shù)據(jù)、查詢數(shù)

7、據(jù)、顯示所有數(shù)據(jù)功能。然后定義了一個 menu( ) 菜單函數(shù),使功能菜單顯示在運行窗口以提示用戶如何進行操作。主函數(shù)是一個程序必不可少的, 在主函數(shù)中, 使用一個 switch 語句來選擇調(diào)用主菜單中的各個功能函數(shù)。第二章系統(tǒng)功能的分析和設(shè)計在本章中,主要是介紹各個功能函數(shù)的設(shè)計思路和實現(xiàn)方法。2.1初始錄入功能此函數(shù)實現(xiàn)的功能主要是,對學生信息的初始化錄入功能,在初始時,文件中沒有任何數(shù)據(jù),可以通過次函數(shù)輸入任意個學生的信息,在輸入時通過一個if 條件語句來實現(xiàn)控制循環(huán),當輸入的姓名是“0”時,使用 break 語句就跳出循環(huán),即停止輸入學生信息。在此函數(shù)中使用文件處理的方式,先建立一個文

8、件輸出流對象,以寫的方式打開f1.txt 文件,使輸入的學生信息都寫入文件。2.2添加函數(shù)此函數(shù)實現(xiàn)的功能主要是,添加一個學生的信息,也就是說調(diào)用一次這個函數(shù)只能添加一個學生的信息。在此函數(shù)中也使用文件處理的方式,但使用的是以追加的方式打開文件,使輸入的學生信息寫在文件里原有信息的后面。2.3刪除函數(shù)此函數(shù)實現(xiàn)的功能主要是,刪除一個學生的信息。在此函數(shù)中,先以讀的方式打開文件,讀出文件里的信息在顯示在屏幕上,用戶再根據(jù)提示信息輸入想要刪除第幾個人的信息,關(guān)閉文件。再以寫的方式打開文件,以一個if 條件語句控制,再重新將學生信息寫入文件(除了打算刪除的那個學生的信息),由于是以寫的方式打開的文件

9、,所以文件里原有的輸入就都沒有了,存入的新的數(shù)據(jù)。2.4修改函數(shù)此函數(shù)實現(xiàn)的功能主要是,修改一個學生的信息。此函數(shù)的設(shè)計方法和刪除函數(shù)的設(shè)計思想相類似,應(yīng)用的思想都是將學生信息重新寫入文件的方法,將原有數(shù)據(jù)覆蓋。2.5查詢函數(shù)在查詢功能中,可以按多條件查詢,本系統(tǒng)分為兩個查詢條件,即按學號查詢和按姓名查詢。使用if 語句來選擇查詢條件。2.5.1按學號查詢根據(jù)提示信息輸入學號后, 然后使用一個 for 循環(huán)語句,從第一個學生開始檢索, 如果該學生的學號和輸入的學號相等,則輸出該學生的信息,由于學生的學號是唯一固定的,所以并使用 break 語句跳出循環(huán)。當無查詢結(jié)果時,會輸出一條提示信息“無此

10、人信息!” 。2.5.2按姓名查詢根據(jù)提示信息輸入姓名后,然后使用一個for 循環(huán)語句,從第一個學生開始檢索,如果該學生的姓名和輸入的姓名一樣,則輸出該學生的信息,由于學生的姓名有可能重復出現(xiàn),所以不能使用break 語句跳出循環(huán),應(yīng)該從第一個學生開始檢索直到最后一名學生。當無查詢結(jié)果時,會輸出一條提示信息“無此人信息!” 。2.6顯示函數(shù)此函數(shù)實現(xiàn)的功能主要是,顯示所有學生的信息。先是從文件中讀取學生信息,然后在輸出到顯示窗口中。用一個for 循環(huán)語句,來把所有學生的信息都輸出。2.7退出系統(tǒng)當輸入“ 0”時,就能退出系統(tǒng),這是通過while 語句來控制實現(xiàn)的。第三章調(diào)試及運行結(jié)果3.1主菜

11、單主菜單顯示如下:圖 3-1 主菜單3.2顯示功能按 6 則顯示全部信息,如圖3-2:圖 3-2 顯示功能3.3增加功能進入主菜單后選擇 2,進入增加功能,按要求輸入學生信息,增加數(shù)據(jù)前顯示如圖3-2 :增加后顯示如圖 3-3 :圖 3-3 增加后3.4刪除功能進入主菜單后選擇3,進入刪除功能,按要求輸入要刪除的學生信息,刪除數(shù)據(jù)前顯示如圖 3-3 :刪除數(shù)據(jù)后顯示如圖3-4 :圖 3-4 刪除后3.5修改功能進入主菜單后選擇4,進入修改功能,按要求輸入要修改的學生信息,修改數(shù)據(jù)前顯示如圖 3-4 :修改后如圖 3-5:圖 3-5 修改后3.6查詢功能進入主菜單后選擇5,進入查詢功能,如圖3-

12、6 :圖 3-6 選擇查詢條件按學號查詢?nèi)鐖D3-7:按姓名查詢?nèi)鐖D3-8:圖 3-7 按學好查詢:圖 3-8 按姓名查詢第四章總結(jié)4.1遇到的問題及解決方法首先,是對文件的處理不夠熟練, 通過看書和搜集一些資料解決了這個問題;其次,是在編寫程序的過程中出現(xiàn)了一些語法錯誤,后通過調(diào)試逐一解決。4.2收獲和體會此次 c+面向?qū)ο笳n程設(shè)計,在指導教師的精心教導下,我們學會了如何用C+編寫一個簡單的應(yīng)用程序。首先要對程序的設(shè)計要求有一個比較明確的認識,然后系統(tǒng)分析與系統(tǒng)設(shè)計,最后是代碼設(shè)計與調(diào)試。程序?qū)崿F(xiàn)上,設(shè)計了簡單的菜單界面,將各個功能集中出現(xiàn)在主菜單中,便于調(diào)用。根據(jù) C+課程所學的概念、理論和

13、方法,按照C+程序設(shè)計的基本步驟,設(shè)計出一個適當規(guī)模的程序;進一步加深對C+語言的理解和掌握。理論聯(lián)系實際,加深和鞏固所學的理論知識,提高實踐能力和計算機的綜合運用能力。我們編寫程序的過程是辛苦與快樂的,程序的編寫原則很重要,只要我們在編程,就必須不斷改進,才能更好提高編程能力。參考文獻1 C+語言程序設(shè)計(第三版) ,鄭莉,清華大學出版社 ,20042 C+語言程序設(shè)計案例教程 ,鄭莉,清華大學出版社 ,20053 C+程序設(shè)計教程 ,錢能主編,清華大學出版社,1999.44 C+程序設(shè)計,譚浩強,清華大學出版社, 20045 C+程序設(shè)計實踐指導 ,譚浩強,清華大學出版社, 20056 C

14、+程序設(shè)計課程設(shè)計 ,劉振安,機械工業(yè)出版社, 2004.8附錄:程序代碼#include#include#include#includeusing namespace std;#define M 200/可以存信息總量int N=0;/ 學生總量class studentpublic:student();void set();/初始化信息,第一次對信息的錄入void add();/添加學生信息void del();/刪除某學生信息void change();/修改某學生信息void search();/查詢某學生信息void display();/顯示全部學生信息private:static

15、 int num;string name,sex,politic,address;int student:num=110;student:student() void student:set()int i;string setname,setsex,setpolitic,setaddress;ofstream outfile;outfile.open(f1.txt,ios:out);/- 打開文件 -if(!outfile)cerr open errorendl;exit(1);/- 依次錄入相應(yīng)個數(shù)的學生信息-for(i=0;iM;i+)cout當姓名輸入為 0時,停止輸入! endl; c

16、out請輸入姓名: setname;name=setname;if(setname=0) break;if(setname!=0)N+;num+;outfilenum;outfilesetname;cout請輸入性別: setsex;sex=setsex;outfilesetsex;cout請輸入政治面貌: setpolitic;politic=setpolitic;outfilesetpolitic;cout請輸入家庭住址: setaddress;address=setaddress;outfilesetaddressendl;outfile.close();/- 關(guān)閉文件 -void st

17、udent:add()string addname,addsex,addpolitic,addaddress;/- 以追加的方式錄入信息,直接將信息追加到以前文件的末尾-ofstream outfile(f1.txt,ios:app);if(!outfile)cerr open errorendl;exit(1);N=N+1;/- 依次輸入相應(yīng)的數(shù)據(jù),并且追加到之前的文件中去-cout 請輸入您要添加的數(shù)據(jù) endl;num+;outfilenum;cout請輸入姓名: addname;outfileaddname;cout請輸入性別: addsex;outfileaddsex;cout請輸入

18、政治面貌: addpolitic;outfileaddpolitic;cout請輸入家庭住址: addaddress;outfileaddaddressendl;outfile.close();cout已添加成功! endl;void student:del()int k,i;int numM;string nameM,sexM,politicM,addressM;ifstream infile(f1.txt,ios:in);if(!infile)cerr open errorendl;exit(1);for(i=0;iN;i+)coutnumi;coutsetw(9)namei;coutse

19、tw(9)sexi;coutsetw(9)politici;coutsetw(9)addressi;coutsetw(9)addressiendl;cout 你想刪除第幾個? k;k=k-1;infile.close();ofstream outfile(f1.txt,ios:out);if(!outfile)cerr open errorendl;exit(1); / 退出程序/- 將數(shù)組存取的信息輸出到文件中去-for(i=0;iN;i+)if(i!=k)outfilenumi;outfilenamei;outfilesexi;outfilepolitici;outfileaddressi

20、endl;outfile.close();N=N-1;cout 已刪除成功! endl;void student:change()int i,k;int numM;string nameM,sexM,politicM,addressM;ifstream infile(f1.txt,ios:in);if(!infile)cerr open errorendl;exit(1);for(i=0;iN;i+)coutnumi;coutsetw(9)namei;coutsetw(9)sexi;coutsetw(9)politici;coutsetw(9)addressi;coutsetw(9)addre

21、ssiendl;infile.close();ofstream outfile(f1.txt,ios:out);if(!outfile)cerr open errorendl;exit(1);cout 你想修改第幾個數(shù)據(jù) ?k;k=k-1;cout 請輸入新的數(shù)據(jù): endl;cout 請輸入姓名: namek;cout 請輸入性別: sexk;cout 請輸入政治面貌: politick;cout 請輸入家庭住址: addressk;for(i=0;iN;i+)outfilenumi;outfilenamei;outfilesexi;outfilepolitici;outfileaddres

22、siendl;outfile.close();cout 已修改成功! endl;void student:search()int i,n,w=0,numM,aM;char ch;string searchname,nameM,sexM,politicM,addressM,bM4;couta.按學號查找b.按姓名查找 endl;ifstream infile(f1.txt,ios:in);if(!infile)cerr open errorendl;exit(1);for(i=0;inumi;ai=numi;infilenamei;bi0=namei;infilesexi;bi1=sexi;in

23、filepolitici;bi2=politici;infileaddressi;bi3=addressi;cout 請輸入a 或者b!ch;if(ch=a)coutn;for(i=0;iN;i+)if(ai=n)endl;w=1;cout學號姓名性別政治面貌家庭住址 endl;cout;coutsetw(9)ai;coutsetw(9)bi0;coutsetw(9)bi1;coutsetw(9)bi2;coutsetw(9)bi3endl;if(w=0)cout無此人信息! endl;else if(ch=b)cout請輸入姓名! searchname;for(i=0;iN;i+)if(namei=searchname)w=1;cout學號姓名性別政治面貌家庭住址 en

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論