![C++課程設計——學生信息管理系統(tǒng)_第1頁](http://file1.renrendoc.com/fileroot_temp2/2020-10/8/60927466-84f6-4782-a842-293e16f39c90/60927466-84f6-4782-a842-293e16f39c901.gif)
![C++課程設計——學生信息管理系統(tǒng)_第2頁](http://file1.renrendoc.com/fileroot_temp2/2020-10/8/60927466-84f6-4782-a842-293e16f39c90/60927466-84f6-4782-a842-293e16f39c902.gif)
![C++課程設計——學生信息管理系統(tǒng)_第3頁](http://file1.renrendoc.com/fileroot_temp2/2020-10/8/60927466-84f6-4782-a842-293e16f39c90/60927466-84f6-4782-a842-293e16f39c903.gif)
![C++課程設計——學生信息管理系統(tǒng)_第4頁](http://file1.renrendoc.com/fileroot_temp2/2020-10/8/60927466-84f6-4782-a842-293e16f39c90/60927466-84f6-4782-a842-293e16f39c904.gif)
![C++課程設計——學生信息管理系統(tǒng)_第5頁](http://file1.renrendoc.com/fileroot_temp2/2020-10/8/60927466-84f6-4782-a842-293e16f39c90/60927466-84f6-4782-a842-293e16f39c905.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、課程設計說明書題 目: 學生信息管理系統(tǒng)學 院: 信息工程學院班 級: 軟件09-1 2011 年 1 月 21 日X X 大學課程設計(論文)任務書課程名稱: 面向對象程序設計課程設計 學院: 信息工程學院 班級: 軟件09-1 學生姓名: X X X _ 學號: 0000 指導教師: X X X 一、題目學生信息管理系統(tǒng)二、目的與意義面向對象程序設計課程設計課程設計是計算機科學與技術專業(yè)實踐性環(huán)節(jié)之一,通過課程設計的綜合訓練可以使學生進一步理解和掌握面向對象程序設計課程的基本知識;掌握面向對象程序設計的思路和方法;基本具有利用面向對象的方法以及 C+的編程思想來完成系統(tǒng)設計的能力。三、要求
2、(包括原始數據、技術參數、設計要求、圖紙量、工作量要求等) 1. 要求利用面向對象的方法以及C+的編程思想來完成系統(tǒng)的設計;2. 要求在設計的過程中,建立清晰的類層次;3. 在系統(tǒng)中至少要定義一個類,類中要有各自的屬性和方法;4. 在系統(tǒng)的設計中,至少要用到面向對象的一種機制。四、工作內容、進度安排 1. 根據課程設計的要求,確定設計題目;(0.5天)2. 查找相關資料,進行應用程序總體結構、使用功能的設計;(0.5天)3. 進行應用程序的界面設計和源程序代碼的編寫;(2.5天)4. 設計說明書的撰寫、答辯(1.5天)五、主要參考文獻1C+語言程序設計(第三版),鄭莉,清華大學出版社,2004
3、2C+程序設計教程,錢能主編,清華大學出版社,1999.43C+程序設計課程設計,劉振安,機械工業(yè)出版社,2004.8審核意見系(教研室)主任(簽字) 指導教師下達時間 2011年 1月 17日指導教師簽字:_目錄前言1第一章 系統(tǒng)概述21.1 功能簡介21.2 設計思路2第二章 系統(tǒng)功能的分析和設計32.1 初始錄入功能32.2 添加函數32.3 刪除函數32.4 修改函數32.5 查詢函數42.5.1 按學號查詢42.5.2 按姓名查詢42.6 顯示函數42.7 退出系統(tǒng)4第三章 調試及運行結果53.1 主菜單53.2 顯示功能53.3 增加功能53.4 刪除功能63.5 修改功能63.6
4、 查詢功能6第四章 總結84.1 遇到的問題及解決方法84.2 收獲和體會8前言學生信息管理系統(tǒng),是針對學校人事處的大量業(yè)務處理工作而開發(fā)的管理軟件,是典型的管理信息系統(tǒng)。它是一個教育單位不可缺少的部分,它的內容對于學校管理者來說是至關重要的,能有效的幫助學校和老師掌握學生的情況。在傳統(tǒng)模式下利用人工進行學生信息管理,存在著較多的缺點,如:效率底,保密性差,時間一長將產生大量的文件和數據,更不便于查找,更新,維護等。諸如這些情況,令學校管理者對學生的信息管理帶來了很大困難,嚴重影響了教育工作者的工作效率。隨著科學技術的不斷提高,使用日趨成熟的計算機技術來代替?zhèn)鹘y(tǒng)的人工模式,來實現學生信息的現代
5、化管理,其強大的功能已為人們深刻認識,它已進入人類社會的各個領域并發(fā)揮著越來越重要的作用。作為計算機應用的一部分,使用計算機對學生信息進行管理,具有著手工管理所無法比擬的優(yōu)點。例如:檢索迅速、查找方便、易修改、可靠性高、存儲量大、數據處理快捷、保密性好、壽命長、成本低等。這些優(yōu)點能夠極大地提高學生信息管理的效率,也是學校實現科學化、正規(guī)化管理的重要條件。因此,開發(fā)這樣一套管理軟件成為很有必要的事情。 第一章 系統(tǒng)概述1.1 功能簡介本軟件是一個簡單的學校學生信息管理系統(tǒng),軟件窗口為DOS頁面。學生信息管理系統(tǒng)的功能主要是實現學校學生的信息化管理。通過學生信息管理系統(tǒng),教學管理人員可以實現對學生
6、信息的增加、刪除、修改和查詢等操作。本系統(tǒng)最大的優(yōu)點就是操作簡便快捷等。1.2 設計思路將學生信息定義為一個student類,在類中包含私有數據成員int num、string name、string sex、string politic、string address,分別表示學號、姓名、性別、政治面貌、家庭住址。公有成員函數包括set( ) ,add( ) ,del( ) ,change( ) ,research( ) ,show( ) ,分別用來實現對學生信息的數據初始錄入、增加數據、刪除數據、修改數據、查詢數據、顯示所有數據功能。然后定義了一個menu( ) 菜單函數,使功能菜單顯示在運
7、行窗口以提示用戶如何進行操作。主函數是一個程序必不可少的,在主函數中,使用一個switch語句來選擇調用主菜單中的各個功能函數。 第二章 系統(tǒng)功能的分析和設計在本章中,主要是介紹各個功能函數的設計思路和實現方法。2.1 初始錄入功能此函數實現的功能主要是,對學生信息的初始化錄入功能,在初始時,文件中沒有任何數據,可以通過次函數輸入任意個學生的信息,在輸入時通過一個if條件語句來實現控制循環(huán),當輸入的姓名是“0”時,使用break語句就跳出循環(huán),即停止輸入學生信息。在此函數中使用文件處理的方式,先建立一個文件輸出流對象,以寫的方式打開f1.txt文件,使輸入的學生信息都寫入文件。2.2 添加函數
8、 此函數實現的功能主要是,添加一個學生的信息,也就是說調用一次這個函數只能添加一個學生的信息。在此函數中也使用文件處理的方式,但使用的是以追加的方式打開文件,使輸入的學生信息寫在文件里原有信息的后面。2.3 刪除函數 此函數實現的功能主要是,刪除一個學生的信息。在此函數中,先以讀的方式打開文件,讀出文件里的信息在顯示在屏幕上,用戶再根據提示信息輸入想要刪除第幾個人的信息,關閉文件。再以寫的方式打開文件,以一個if條件語句控制,再重新將學生信息寫入文件(除了打算刪除的那個學生的信息),由于是以寫的方式打開的文件,所以文件里原有的輸入就都沒有了,存入的新的數據。2.4 修改函數 此函數實現的功能主
9、要是,修改一個學生的信息。此函數的設計方法和刪除函數的設計思想相類似,應用的思想都是將學生信息重新寫入文件的方法,將原有數據覆蓋。2.5 查詢函數 在查詢功能中,可以按多條件查詢,本系統(tǒng)分為兩個查詢條件,即按學號查詢和按姓名查詢。使用if語句來選擇查詢條件。 2.5.1 按學號查詢 根據提示信息輸入學號后,然后使用一個for循環(huán)語句,從第一個學生開始檢索,如果該學生的學號和輸入的學號相等,則輸出該學生的信息,由于學生的學號是唯一固定的,所以并使用break語句跳出循環(huán)。 當無查詢結果時,會輸出一條提示信息“無此人信息!” 。 2.5.2 按姓名查詢 根據提示信息輸入姓名后,然后使用一個for循
10、環(huán)語句,從第一個學生開始檢索,如果該學生的姓名和輸入的姓名一樣,則輸出該學生的信息,由于學生的姓名有可能重復出現,所以不能使用break語句跳出循環(huán),應該從第一個學生開始檢索直到最后一名學生。 當無查詢結果時,會輸出一條提示信息“無此人信息!” 。2.6 顯示函數 此函數實現的功能主要是,顯示所有學生的信息。先是從文件中讀取學生信息,然后在輸出到顯示窗口中。用一個for循環(huán)語句,來把所有學生的信息都輸出。2.7 退出系統(tǒng) 當輸入“0”時,就能退出系統(tǒng),這是通過while語句來控制實現的。第三章 調試及運行結果3.1 主菜單主菜單顯示如下:圖3-1 主菜單3.2 顯示功能按6則顯示全部信息,如圖
11、3-2:圖3-2 顯示功能3.3 增加功能進入主菜單后選擇2,進入增加功能,按要求輸入學生信息,增加數據前顯示如圖3-2:增加后顯示如圖3-3:圖3-3 增加后3.4 刪除功能進入主菜單后選擇3,進入刪除功能,按要求輸入要刪除的學生信息,刪除數據前顯示如圖3-3:刪除數據后顯示如圖3-4:圖3-4 刪除后3.5 修改功能進入主菜單后選擇4,進入修改功能,按要求輸入要修改的學生信息,修改數據前顯示如圖3-4:修改后如圖3-5:圖3-5 修改后3.6 查詢功能進入主菜單后選擇5,進入查詢功能,如圖3-6:圖3-6選擇查詢條件按學號查詢如圖3-7:按姓名查詢如圖3-8: 圖3-7 按學好查詢:圖3-
12、8按姓名查詢第四章 總結4.1 遇到的問題及解決方法 首先,是對文件的處理不夠熟練,通過看書和搜集一些資料解決了這個問題;其次,是在編寫程序的過程中出現了一些語法錯誤,后通過調試逐一解決。4.2 收獲和體會此次c+面向對象課程設計,在指導教師的精心教導下,我們學會了如何用C+編寫一個簡單的應用程序。首先要對程序的設計要求有一個比較明確的認識,然后系統(tǒng)分析與系統(tǒng)設計,最后是代碼設計與調試。程序實現上,設計了簡單的菜單界面,將各個功能集中出現在主菜單中,便于調用。根據C+課程所學的概念、理論和方法,按照C+程序設計的基本步驟,設計出一個適當規(guī)模的程序;進一步加深對C+語言的理解和掌握。理論聯系實際
13、,加深和鞏固所學的理論知識,提高實踐能力和計算機的綜合運用能力。我們編寫程序的過程是辛苦與快樂的,程序的編寫原則很重要,只要我們在編程,就必須不斷改進,才能更好提高編程能力。參考文獻1 C+語言程序設計(第三版),鄭莉,清華大學出版社,2004 2C+語言程序設計案例教程,鄭莉,清華大學出版社,20053C+程序設計教程,錢能主編,清華大學出版社,1999.4 4C+程序設計,譚浩強,清華大學出版社,20045C+程序設計實踐指導,譚浩強,清華大學出版社,20056C+程序設計課程設計,劉振安,機械工業(yè)出版社,2004.8 附錄:程序代碼#include#include#include#inc
14、ludeusing 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 int num;string name,sex,politic,address;int student:num=
15、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);/-依次錄入相應個數的學生信息-for(i=0;iM;i+)cout當姓名輸入為0時,停止輸入!endl;cout請輸入姓名:setname; name=setname;if(setname=0) break;if(setname
16、!=0)N+;num+; outfilenum ; outfilesetname ; cout請輸入性別:setsex; sex=setsex; outfilesetsex ; cout請輸入政治面貌:setpolitic; politic=setpolitic; outfilesetpolitic ; cout請輸入家庭住址:setaddress; address=setaddress; outfilesetaddressendl;outfile.close(); /-關閉文件-void student:add()string addname,addsex,addpolitic,addadd
17、ress;/-以追加的方式錄入信息,直接將信息追加到以前文件的末尾-ofstream outfile(f1.txt,ios:app);if(!outfile) cerr open errorendl; exit(1); N=N+1;/-依次輸入相應的數據,并且追加到之前的文件中去-cout請輸入您要添加的數據endl; num+; outfilenum ;cout請輸入姓名:addname;outfileaddname ;cout請輸入性別:addsex;outfileaddsex ;cout請輸入政治面貌:addpolitic;outfileaddpolitic ;cout請輸入家庭住址:a
18、ddaddress;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;coutsetw(9)sexi;coutsetw(9)politici;coutsetw(9)addressi;
19、coutsetw(9)addressiendl;cout你想刪除第幾個?k;k=k-1;infile.close();ofstream outfile(f1.txt,ios:out);if(!outfile)cerr open errorendl; exit(1); /退出程序/-將數組存取的信息輸出到文件中去-for(i=0;iN;i+)if(i!=k)outfilenumi ;outfilenamei ;outfilesexi ;outfilepolitici ;outfileaddressi endl;outfile.close();N=N-1;cout已刪除成功!endl;void s
20、tudent: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)addressiendl;infile.close();ofstream outfile(f1.txt,io
21、s:out);if(!outfile) cerr open errorendl; exit(1); cout你想修改第幾個數據?k;k=k-1;cout請輸入新的數據:endl;cout請輸入姓名:namek;cout請輸入性別:sexk;cout請輸入政治面貌:politick;cout請輸入家庭住址:addressk;for(i=0;iN;i+) outfilenumi ;outfilenamei ;outfilesexi ;outfilepolitici ;outfileaddressi endl;outfile.close();cout已修改成功!endl;void student:s
22、earch()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;infilepolitici;bi2=politici;infileaddressi;bi3=address
23、i;cout請輸入a或者b!ch; if(ch=a)cout請輸入學號!n;for(i=0;iN;i+)if(ai=n)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 學號 姓名 性別 政治面貌 家庭住址endl;cout ;coutsetw(9)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度建筑工地鋼筋信息化管理與服務合同
- 2025年度智慧交通系統(tǒng)合伙研發(fā)合同
- 2025年度山林林業(yè)生態(tài)補償基金管理合同范本
- 2025年度醫(yī)院病房窗簾定制與消毒服務合同范本3篇
- 2025年度家具制品-國際貿易合同樣本
- 2025年度城市住宅購房借款合同
- 2025年度房地產開發(fā)股權代持合同模板
- 2025年度施工現場環(huán)境保護與安全責任合同
- 2025年度建筑工程合同爭議調解協議
- 2025年個人雇用合同模板(三篇)
- 2025年個人學習領導講話心得體會和工作措施例文(6篇)
- 2025大連機場招聘109人易考易錯模擬試題(共500題)試卷后附參考答案
- 2020-2025年中國中小企業(yè)行業(yè)市場調研分析及投資戰(zhàn)略咨詢報告
- 2025-2030年中國電動高爾夫球車市場運行狀況及未來發(fā)展趨勢分析報告
- 物流中心原材料入庫流程
- 河南省濮陽市2024-2025學年高一上學期1月期末考試語文試題(含答案)
- 長沙市2025屆中考生物押題試卷含解析
- 2024年08月北京中信銀行北京分行社會招考(826)筆試歷年參考題庫附帶答案詳解
- 2024年芽苗菜市場調查報告
- 蘇教版二年級數學下冊全冊教學設計
- 職業(yè)技術學院教學質量監(jiān)控與評估處2025年教學質量監(jiān)控督導工作計劃
評論
0/150
提交評論