




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、軟件編程實(shí)訓(xùn)1指導(dǎo)書(shū)優(yōu)集學(xué)院 制造業(yè)信息化系軟件編程實(shí)訓(xùn)1指導(dǎo)書(shū)一、實(shí)訓(xùn)目的1. 鞏固并加深學(xué)生對(duì)C+語(yǔ)言程序設(shè)計(jì)知識(shí)的理解;2. 培養(yǎng)學(xué)生面向?qū)ο蟮某绦蛟O(shè)計(jì)思想,使學(xué)生認(rèn)識(shí)面向過(guò)程和面向?qū)ο髢煞N設(shè)計(jì)方法的區(qū)別;3. 進(jìn)一步掌握和應(yīng)用VC+ 6.0或Visual Studio 2005集成開(kāi)發(fā)環(huán)境;提高程序調(diào)試的能力,能夠快速準(zhǔn)確的排查程序錯(cuò)誤并糾正,最終調(diào)試出可正確運(yùn)行的程序;4. 提高運(yùn)用C+語(yǔ)言解決實(shí)際問(wèn)題的能力;5. 初步掌握開(kāi)發(fā)小型實(shí)用軟件的基本方法,能獨(dú)立設(shè)計(jì)、實(shí)現(xiàn)基本功能的小系統(tǒng);6. 掌握應(yīng)用程序設(shè)計(jì)開(kāi)發(fā)和文檔撰寫(xiě)規(guī)范。二、實(shí)訓(xùn)任務(wù)每位學(xué)生從所給定的題目里面選擇兩個(gè)感興趣的題目
2、作為實(shí)訓(xùn)任務(wù),另外也可自定題目,需經(jīng)指導(dǎo)老師同意后方可作為實(shí)訓(xùn)任務(wù)。1、萬(wàn)年歷程序設(shè)計(jì)程序功能及實(shí)現(xiàn)技術(shù)要求:. 程序主要實(shí)現(xiàn)3個(gè)功能:顯示某一年的每個(gè)月的日歷、顯示某一年某一個(gè)月的日 歷以及查詢(xún)某一天是星期幾。. 功能選擇用菜單實(shí)現(xiàn)。例如:1 顯示某一年的日歷2 顯示某年某一月的日歷3 顯示某一天是星期幾0 退出用戶通過(guò)輸入不同的數(shù)字進(jìn)入不同的菜單。. 每一月以日歷表格的形式顯示,表格的第一行顯示星期,表格的內(nèi)容是每一天。 用戶可以很容易看到每一天是星期幾。. 利用輸入輸出函數(shù)和循環(huán)控制語(yǔ)句,實(shí)現(xiàn)一個(gè)簡(jiǎn)單的人機(jī)交互界面。. 利用邏輯表達(dá)式,使用控制語(yǔ)句,判斷閏年,某年某月某日是星期幾。. 實(shí)
3、現(xiàn)對(duì)顯示結(jié)果進(jìn)行控制。2、公司職員的信息管理程序設(shè)計(jì)程序功能及實(shí)現(xiàn)技術(shù)要求:. 本程序?qū)崿F(xiàn)的功能是增加職員信息、查找職員信息、瀏覽所有的職員信息、刪除職員信息。功能結(jié)構(gòu)圖如下圖所示: . 功能選擇可以用菜單實(shí)現(xiàn)。用戶根據(jù)自己不同的選擇進(jìn)入不同的菜單。. 程序可以用指針與數(shù)組或者鏈表實(shí)現(xiàn),信息不要求保存到文件中。若用數(shù)組實(shí)現(xiàn),程序開(kāi)始時(shí)數(shù)組內(nèi)容為空,用戶需要先增加職員信息,之后才能實(shí)現(xiàn)查找、刪除等功能。. 職員信息的關(guān)鍵字是職員的員工號(hào),加入時(shí)職員號(hào)重復(fù)的記錄不能加入。查找、刪除按照職員號(hào)進(jìn)行操作。. 選做功能:將職員信息存儲(chǔ)到文件中。3、集合類(lèi)程序設(shè)計(jì)集合的概念 在數(shù)學(xué)中,我們把具有某些共同特
4、征的元素構(gòu)成的一個(gè)整體稱(chēng)為集合。 一個(gè)集合就是由同一種有序類(lèi)型的一組數(shù)據(jù)元素所組成的,這一種有序類(lèi)型稱(chēng)為該集合的基類(lèi)型。設(shè)計(jì)一個(gè)集合類(lèi)numSet,存放有序的整型數(shù)序,其中的元素按從小到大的順序排列并且不包含相同的元素。程序功能及實(shí)現(xiàn)技術(shù)要求:. 集合中的元素可用數(shù)組存放,也可用鏈表存放。 . 構(gòu)造函數(shù)要求:能夠通過(guò)從鍵盤(pán)上輸入數(shù)據(jù)的形式,給集合中各元素賦值。 . 能夠?qū)⒓现每?、向集合中增加元素(過(guò)濾重復(fù)數(shù)據(jù))并保持有序。 . 能從集合中查找數(shù)據(jù)元素是否在集合中。 . 能從集合中刪除某個(gè)指定元素。. 能顯示集合中元素個(gè)數(shù)、顯示集合中的全部元素。. 能將集合元素逆置。. 能實(shí)現(xiàn)兩個(gè)集合的+相并
5、。 . 能實(shí)現(xiàn)兩個(gè)集合的×相交。 . 能實(shí)現(xiàn)兩個(gè)集合的-差集。 . 在主函數(shù)中實(shí)現(xiàn)上述功能(創(chuàng)建對(duì)象,將集合置空、輸入集合中元素,顯示元素及個(gè)數(shù),能增、刪元素,將集合中元素逆置,實(shí)現(xiàn)集合并、交、差),另外創(chuàng)建一個(gè)拷貝構(gòu)造函數(shù),并使用一些數(shù)據(jù)進(jìn)行測(cè)試。4、特殊計(jì)算器程序設(shè)計(jì)程序功能及實(shí)現(xiàn)技術(shù)要求:. 程序的功能是實(shí)現(xiàn)一個(gè)特殊的計(jì)算器,可以實(shí)現(xiàn)復(fù)數(shù)、有理數(shù)、矩陣和集合的特殊運(yùn)算。其中,可以實(shí)現(xiàn)復(fù)數(shù)、有理數(shù)的加、減、乘、除,可以實(shí)現(xiàn)矩陣的加法、減法和乘法運(yùn)算,也可以實(shí)現(xiàn)兩個(gè)集合的求交集、并集和判斷一個(gè)集合是否是另一個(gè)集合的子集的運(yùn)算。 基本功能圖如下圖所示:. 功能選擇可以用菜單實(shí)現(xiàn)。例如
6、:1 復(fù)數(shù)計(jì)算2 有理數(shù)計(jì)算3 矩陣計(jì)算4 集合計(jì)算0 退出用戶通過(guò)輸入不同的數(shù)字進(jìn)入不同的菜單。. 運(yùn)行時(shí)給出明確的提示信息,比如,輸入一個(gè)什么類(lèi)型的數(shù)據(jù)。根據(jù)用戶的輸入計(jì)算出結(jié)果。 . 使用運(yùn)算符重載實(shí)現(xiàn)各種特殊的計(jì)算。三、系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)(一)詳細(xì)開(kāi)發(fā)步驟及時(shí)間分配以一個(gè)課題的設(shè)計(jì)流程為例:序號(hào)內(nèi)容具體要求時(shí)間分配1選題根據(jù)自己的學(xué)習(xí)能力和參考資料選擇適當(dāng)?shù)恼n題,并報(bào)課代表處統(tǒng)計(jì)。0.5天2需求分析明確系統(tǒng)需求,畫(huà)出功能結(jié)構(gòu)圖,對(duì)系統(tǒng)功能進(jìn)行詳細(xì)描述。0.5天3概要設(shè)計(jì)明確系統(tǒng)運(yùn)行環(huán)境、開(kāi)發(fā)環(huán)境;進(jìn)行整體設(shè)計(jì)。0.5天4詳細(xì)設(shè)計(jì)類(lèi)設(shè)計(jì)、界面設(shè)計(jì),分析各部分實(shí)現(xiàn)方法。1天5編碼實(shí)現(xiàn)各類(lèi)代碼編
7、寫(xiě)。2天6集成調(diào)試系統(tǒng)各模塊集成調(diào)試0.5天(二)程序設(shè)計(jì)指導(dǎo)1、萬(wàn)年歷程序設(shè)計(jì)公元計(jì)年從1年1月1日開(kāi)始,這天是星期一(也可以以其它日期作為比照,如1900年1月1日是星期一)。平年一年365天,閏年366天,通過(guò)除以7取余數(shù)可以計(jì)算給定的某天推移到了星期幾。計(jì)算某年的日歷則要首先計(jì)算該年的元旦是星期幾,計(jì)算某月的日歷則要首先計(jì)算該月1號(hào)是星期幾,然后進(jìn)行顯示控制,依次輸出日歷。運(yùn)行結(jié)果圖參考:2、公司職員的信息管理程序設(shè)計(jì). 定義員工類(lèi)包含員工姓名、職工號(hào)、部門(mén)、工資、職位等基本信息,并完成帶參的構(gòu)造函數(shù)。. 定義公司類(lèi),包含員工數(shù)、指向員工信息地址的指針數(shù)組、指向員工類(lèi)的指針,并完成添加
8、員工、刪除員工、顯示員工、查找員工等成員函數(shù)。. 動(dòng)態(tài)分配的空間要在析構(gòu)或者其它合適的地方釋放空間。參考員工類(lèi)和公司類(lèi)的定義:class Staffpublic:Staff();Staff(char * name1,char *no1,char *dep,double salary1,char*work1);char name16;char no6;char department16;double salary;char work16;class Companypublic:Company(); Company();bool AddStaff(char *name,char * no,char
9、 *dep,double salary,char *work);bool DeleteStaff(char *no);bool FindStaff(char * no);void DisplayAll();private:int count;Staff *address30;Staff *Sta;運(yùn)行結(jié)果圖參考:3、集合類(lèi)程序設(shè)計(jì). 集合的概念 在數(shù)學(xué)中,我們把具有某些共同特征的元素構(gòu)成的一個(gè)整體稱(chēng)為集合。 一個(gè)集合就是由同一種有序類(lèi)型的一組數(shù)據(jù)元素所組成的,這一種有序類(lèi)型稱(chēng)為該集合的基類(lèi)型。. 集合中的元素可用數(shù)組存放,也可用鏈表存放用數(shù)組存放時(shí),集合中數(shù)據(jù)成員元素個(gè)數(shù)數(shù)組(定義時(shí)用最大值)
10、 用鏈表存放時(shí),集合中數(shù)據(jù)成員元素個(gè)數(shù)指針(定義時(shí)指向結(jié)點(diǎn)類(lèi)型). 集合類(lèi)的定義:可以使用數(shù)組或其它形式存放集合的元素,設(shè)定集合元素個(gè)數(shù)的最大值并有一個(gè)存放當(dāng)前集合元素個(gè)數(shù)的變量,也可以對(duì)集合的元素動(dòng)態(tài)分配空間。部分?jǐn)?shù)據(jù)成員: int count; /數(shù)序中元素的個(gè)數(shù) int aMAX; /存放數(shù)序的數(shù)組部分成員函數(shù): void addnum(int n); /向有序數(shù)組中添加元素 void delenum(int n); /從有序數(shù)組中查找元素并刪除 numSet( ) count=0; /構(gòu)造函數(shù) void disp ( ); /輸出有序數(shù)組 4、特殊計(jì)算器程序設(shè)計(jì). 復(fù)數(shù)的運(yùn)算法則:加法
11、:(a+bi)+(c+di)=(a+c)+(b+d)i減法:(a+bi)-(c+di)=(a-c)+(b-d)i乘法:(a+bi)*(c+di)=(ac-bd)+(ad+bc)i除法:(a+bi)/(c+di)=(a+bi)*(c-di)/(c*c+d*d)=(ac+bd)+(bc-ad)i)/(c*c+d*d). 矩陣:矩陣類(lèi)的定義:所要做矩陣的加、減、乘運(yùn)算對(duì)矩陣行數(shù)與列數(shù)的要求不同,矩陣的行數(shù)與列數(shù)應(yīng)該是動(dòng)態(tài)確定的,這時(shí)就需要在構(gòu)造函數(shù)里根據(jù)給定的行數(shù)和列數(shù)參數(shù)用new動(dòng)態(tài)分配空間,析構(gòu)函數(shù)里用delete刪除分配的空間,并要重新定義拷貝構(gòu)造函數(shù)和對(duì)賦值運(yùn)算符=進(jìn)行重載,以避免分配的資源
12、不能拷貝造成程序錯(cuò)誤。 對(duì)如何給矩陣元素動(dòng)態(tài)分配空間有兩種方法,采用第一種方法在動(dòng)態(tài)分配空間相對(duì)第一種略顯復(fù)雜,但在進(jìn)行矩陣類(lèi)運(yùn)算的重載時(shí)不需要轉(zhuǎn)換行與列到一維數(shù)組,采用第二種方法動(dòng)態(tài)分配空間簡(jiǎn)單些,但進(jìn)行運(yùn)算符重載時(shí)要進(jìn)行行數(shù)與列數(shù)的對(duì)應(yīng)轉(zhuǎn)換,亦可采用其它方法。第一種:double *data; /定義二維矩陣數(shù)據(jù)數(shù)組指針 int rows,cols;/矩陣的行數(shù),列數(shù) /下面是如何在構(gòu)造函數(shù)中分配空間data = new double*rowsfor (i=0;i<rows;i+) datai=new doublecols; for(i=0;i<rows;i+)/行for(j=
13、0;j<n;j+)/列dataij=0; /每個(gè)元素都初始化為零,也可保持隨機(jī)值。/在析構(gòu)函數(shù)中刪除動(dòng)態(tài)分配的空間時(shí):Matrix()/析構(gòu)函數(shù) int i;for(i=0;i<rows;i+)delete datai;cout<<"析構(gòu)函數(shù)被調(diào)用!"<<endl; */第二種:對(duì)二維數(shù)組中的數(shù)據(jù)可以通過(guò)下標(biāo)的轉(zhuǎn)換變成對(duì)一維數(shù)組的處理,如二維數(shù)組arowscols和一維數(shù)組brows*cols可以通過(guò)如下進(jìn)行對(duì)應(yīng):aij對(duì)應(yīng)b(i-1)*cols+(j-1)矩陣的運(yùn)算法則:矩陣相加減就是兩個(gè)行數(shù)和列數(shù)相同的二維數(shù)組相加減;兩個(gè)矩陣相乘,其
14、實(shí)就是兩個(gè)二維數(shù)組,其中一個(gè)的行數(shù)等于另一個(gè)的列數(shù),按矩陣相乘的法則進(jìn)行運(yùn)算。. 有理數(shù):有理數(shù)的概念:任何一個(gè)有理數(shù)都可以寫(xiě)成分?jǐn)?shù)m/n(m,n都是整數(shù),且n0)的形式。在構(gòu)造有理數(shù)對(duì)象時(shí),若分子分母是可以約分的,應(yīng)該進(jìn)行約分的簡(jiǎn)化運(yùn)算,同為負(fù)數(shù)的應(yīng)該將結(jié)果轉(zhuǎn)為正數(shù),同時(shí)要注意處理分子為零的情況。有理數(shù)運(yùn)算法則:加法:a/b+c/d=(a*d+b*c)/(b*d)減法:a/b-c/d=(a*d-b*c)/(b*d)乘法: (a/b)*(c/d)=(a*c)/(b*d)除法:(a/b)/(c/d)=(a*d)/(b*c). 集合:集合的概念:在數(shù)學(xué)中,我們把具有某些共同特征的元素構(gòu)成的一個(gè)整體稱(chēng)為集合
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 工業(yè)設(shè)計(jì)與制造中的機(jī)器學(xué)習(xí)輔助設(shè)計(jì)
- 工業(yè)設(shè)計(jì)與新型建材的融合實(shí)踐
- 工作中的跨文化溝通與合作
- 工業(yè)風(fēng)與現(xiàn)代室內(nèi)設(shè)計(jì)的融合
- 工業(yè)風(fēng)教育空間設(shè)計(jì)創(chuàng)新案例
- 工業(yè)風(fēng)格辦公室裝修設(shè)計(jì)案例剖析
- 工作環(huán)境改善與員工工作效率的關(guān)聯(lián)性研究
- 工程塑料在機(jī)械中的應(yīng)用研究
- 工廠廠區(qū)綠化策略
- 工廠節(jié)能減排的實(shí)踐與經(jīng)驗(yàn)分享
- DB37T 2906-2019 運(yùn)動(dòng)場(chǎng)地合成材料面層 驗(yàn)收要求
- DB34∕T 451-2017 地理標(biāo)志產(chǎn)品 舒城小蘭花
- 《卓有成效的管理者》Word電子版電子版本
- 三生事業(yè)六大價(jià)值
- 鋯石基本特征及地質(zhì)應(yīng)用
- 絲網(wǎng)除沫器小計(jì)算
- 制缽機(jī)的設(shè)計(jì)(機(jī)械CAD圖紙)
- 學(xué)校財(cái)務(wù)管理制度
- 三年級(jí)下冊(cè)美術(shù)課件-第15課色彩拼貼畫(huà)|湘美版(共11張PPT)
- 水稻病蟲(chóng)統(tǒng)防統(tǒng)治工作總結(jié)
- 水在不同溫度下的折射率、粘度和介電常數(shù)
評(píng)論
0/150
提交評(píng)論