国产精品色无码视频,国产av毛片影院精品资源,亚洲人成网站77777·c0m,囯产av无码片毛片一级,夜夜操www99视频,美女白嫩胸交在线观看,亚洲a毛片性生活

薈聚奇文、博采眾長(zhǎng)、見(jiàn)賢思齊
當(dāng)前位置:公文素材庫(kù) > 計(jì)劃總結(jié) > 工作總結(jié) > 劉玉繪 軟件工程課程設(shè)計(jì)總結(jié)報(bào)告

劉玉繪 軟件工程課程設(shè)計(jì)總結(jié)報(bào)告

網(wǎng)站:公文素材庫(kù) | 時(shí)間:2019-05-29 11:23:56 | 移動(dòng)端:劉玉繪 軟件工程課程設(shè)計(jì)總結(jié)報(bào)告

劉玉繪 軟件工程課程設(shè)計(jì)總結(jié)報(bào)告

淮海工學(xué)院軟件工程課程設(shè)計(jì)

報(bào)告書(shū)

題目名稱(chēng):圖書(shū)信息管理系統(tǒng)

班級(jí)組別:軟件082班

組員姓名:劉玉繪,石巖,廖南,徐洪衛(wèi),徐浩然,楊晨磊

評(píng)語(yǔ):組員成績(jī):劉玉繪:;石巖:;廖南:;徐洪衛(wèi):;徐浩然:楊晨磊:;指導(dǎo)教師:批閱時(shí)間:年月日軟件工程課程設(shè)計(jì)文檔目錄序名稱(chēng)份數(shù)號(hào)12345678軟件工程課程設(shè)計(jì)收獲與體會(huì)班級(jí):軟件082組別:6姓名:劉玉繪學(xué)號(hào)110831227本次的軟件工程設(shè)計(jì)針對(duì)具體的實(shí)際項(xiàng)目來(lái)進(jìn)行需求分析,測(cè)試計(jì)劃,概要設(shè)計(jì),詳細(xì)設(shè)計(jì),測(cè)試分析等具體的步驟流程走下來(lái),歷時(shí)時(shí)間為3個(gè)星期。從這3個(gè)星期中,我收獲很多,本次課程設(shè)計(jì)的選題是圖書(shū)信息管理系統(tǒng),組員為六個(gè)人。針對(duì)具體的實(shí)際流程,我們有了明確的分工。各個(gè)流程的都深有體會(huì)。在確立了項(xiàng)目之后,我們就開(kāi)始擬定項(xiàng)目開(kāi)發(fā)計(jì)劃。在做項(xiàng)目開(kāi)發(fā)的時(shí)候,對(duì)需求分析用時(shí),開(kāi)發(fā)用時(shí),測(cè)試用時(shí),維護(hù)等等都做了詳細(xì)的分析。這樣便于在實(shí)際的開(kāi)發(fā)時(shí)隨時(shí)跟蹤計(jì)劃任務(wù)的完成度,從而讓開(kāi)發(fā)人員將進(jìn)度掌握在開(kāi)發(fā)周期的范圍內(nèi)。其次更具要求相應(yīng)的完成了其他的相關(guān)文檔。在團(tuán)隊(duì)的開(kāi)發(fā)項(xiàng)目中,團(tuán)結(jié)協(xié)作是非常的重要,這個(gè)就體現(xiàn)在人與人之間的溝通。很好的溝通能夠加快項(xiàng)目開(kāi)發(fā)的進(jìn)度。這就要求我們作為開(kāi)發(fā)人員要學(xué)會(huì)和善于與合作者溝通。通過(guò)不斷的交流和溝通來(lái)避免一些隱藏的問(wèn)題,及時(shí)的發(fā)現(xiàn)問(wèn)題,解決問(wèn)題,從而能夠按時(shí)的完成項(xiàng)目開(kāi)發(fā)進(jìn)度。在小組長(zhǎng)合理的劃分好各個(gè)時(shí)每個(gè)人的任務(wù)后,我們都按照要求在規(guī)定的時(shí)間里面完成并提交了符合要求的文檔。對(duì)于文檔在軟件工程中的重要性在課程設(shè)計(jì)中體現(xiàn)的非常的明顯。文檔是必不可少的,它重要的也是為了幫助小組成員的溝通。但是文檔也不能過(guò)多,過(guò)于的繁瑣。我們是完全按照GB8567-88的標(biāo)準(zhǔn)來(lái)完成各個(gè)文檔。不僅明確的闡述了開(kāi)發(fā)圖書(shū)信息管理系統(tǒng)的各個(gè)步驟及設(shè)計(jì),同時(shí)也簡(jiǎn)潔明了。通過(guò)本次課程設(shè)計(jì),加深了對(duì)軟件開(kāi)發(fā)流程的深入理解。這是第一次嚴(yán)格的按照軟件工程開(kāi)發(fā)的標(biāo)準(zhǔn)開(kāi)發(fā)項(xiàng)目。在課程設(shè)計(jì)過(guò)程中,認(rèn)真編寫(xiě)軟件開(kāi)發(fā)文檔。代碼編寫(xiě)完后,再認(rèn)真測(cè)試,檢查系統(tǒng)的不足之處。在設(shè)計(jì)過(guò)程中我們也認(rèn)真的學(xué)習(xí)了Rational的一套軟件,通過(guò)次工具我們完成了面向?qū)ο笮枨蠓治黾昂竺娴臏y(cè)試,相信這對(duì)我們將來(lái)工作都非常的有幫助。由于之前開(kāi)發(fā)系統(tǒng)都沒(méi)有編寫(xiě)軟件開(kāi)發(fā)文檔的習(xí)慣,因此,在編寫(xiě)軟件開(kāi)發(fā)文檔的過(guò)程中遇到了一些問(wèn)題,但是通過(guò)查閱資料等途徑解決了。其次,我學(xué)會(huì)了軟件工設(shè)計(jì)的全部過(guò)程,知道文檔的重要性,知道團(tuán)隊(duì)合作的重要性。同時(shí),對(duì)系統(tǒng)的需求分析非常重要,需求的變成直接影響項(xiàng)目的開(kāi)發(fā)進(jìn)度。這次課程設(shè)計(jì)首先對(duì)系統(tǒng)的需求理解不透徹,走了一點(diǎn)彎路,浪費(fèi)了一些時(shí)間。在以后的軟件開(kāi)發(fā)過(guò)程中盡量吸取本次課程設(shè)計(jì)的經(jīng)驗(yàn)教訓(xùn),提高項(xiàng)目開(kāi)發(fā)效率。

擴(kuò)展閱讀:軟件課程設(shè)計(jì)總結(jié)報(bào)告1

鄭志安

編號(hào):()字號(hào)

《軟件課程設(shè)計(jì)》報(bào)告

班級(jí):信科09-3班姓名:張晴剛學(xué)號(hào):08093588講師:謝紅俠

中國(guó)礦業(yè)大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院

201*年1月

鄭志安

軟件課程設(shè)計(jì)任務(wù)書(shū)

專(zhuān)業(yè)年級(jí):電子信息科學(xué)與技術(shù)201*級(jí)學(xué)生姓名:張晴剛

任務(wù)下達(dá)日期:201*年10月16日

課程設(shè)計(jì)日期:201*年10月16日至201*年1月2日

課程設(shè)計(jì)題目:

類(lèi)別題目序號(hào)面向過(guò)程1,2,3,4,5,6,7面向?qū)ο?,2,3,4,5,6,7,8圖形界面3數(shù)據(jù)結(jié)構(gòu)1,2,3,4,6,9

軟件課程設(shè)計(jì)指導(dǎo)教師評(píng)閱書(shū)

指導(dǎo)教師評(píng)語(yǔ)(①基礎(chǔ)理論及基本技能的掌握;②獨(dú)立解決實(shí)際問(wèn)題的能力;

③研究?jī)?nèi)容的理論依據(jù)和技術(shù)方法;④取得的主要成果及創(chuàng)新點(diǎn);⑤工作態(tài)度及工作量;⑥總體評(píng)價(jià)及建議成績(jī);⑦存在問(wèn)題等):

成績(jī):

指導(dǎo)教師簽字:年

月日3

目錄

==============================

第一部分基礎(chǔ)題

第一題1面向過(guò)程

5.編程序,使用戶(hù)任意輸入一個(gè)年份以及該年的1月1日是星期幾,而后任意指定某一天(再輸入該年的任意一個(gè)月份日期),由程序計(jì)算出這一天是星期幾。注意,2月份閏年為29天,非閏年為28天;可被4整除而不可被100整除的年份、或者可被400整除的年份均為閏年。//思考:利用元年元月元日(即1年1月1日)是星期一的已知事實(shí),可對(duì)程序進(jìn)行改造,讓用戶(hù)僅輸入一個(gè)表示日期的年月日,則程序就應(yīng)計(jì)算出那一天是星期幾!..………………....................................7

1.1需求分析…………………………………………………………………………11.2概要設(shè)計(jì)………………………………………………………………………...11.3詳細(xì)設(shè)計(jì)與編碼………………………………………………………………...11.4調(diào)試分析………………………………………………………………………...21.5用戶(hù)使用說(shuō)明………………………………………………………………….31.6設(shè)計(jì)心得………………………………………………………………………...3

第二題

7.將輸入的羅馬數(shù)據(jù)化為10進(jìn)制數(shù)。假設(shè)羅馬數(shù)據(jù)中只使用如下7個(gè)“基值”字母:M、D、C、L、X、V、I,分別用來(lái)表示1000、500、100、50、10、5、1。如,羅馬數(shù)據(jù)LXXXVII表示10進(jìn)制的87。

將輸入的10進(jìn)制正整數(shù)轉(zhuǎn)換為羅馬數(shù)據(jù)。假設(shè)羅馬數(shù)據(jù)中只使用“基值”字母:M、D、C、L、X、V、I,分別用來(lái)表示1000、500、100、50、10、5、1。

…………………………………………………………………………3

2.1需求分析………………………………………………………………………….32.2概要設(shè)計(jì)………………………………………………………………………..32.3詳細(xì)設(shè)計(jì)與編碼………………………………………………………………...42.4調(diào)試分析………………………………………………………………………...42.5用戶(hù)使用說(shuō)明………………………………………………………………….52.6設(shè)計(jì)心得………………………………………………………………………...5

2面向?qū)ο?/p>

第三題

1.第一題自定義一個(gè)示意性的復(fù)數(shù)類(lèi)型complex,其中含有若干個(gè)成員函數(shù),使用該類(lèi)

可以完成復(fù)數(shù)的加法以及對(duì)復(fù)數(shù)的輸出。請(qǐng)完成類(lèi)定義,并編制主函數(shù),說(shuō)明complex類(lèi)對(duì)象,對(duì)定義的各成員函數(shù)進(jìn)行調(diào)用。classcomplex{doublereal;//復(fù)數(shù)實(shí)部doubleimag;//復(fù)數(shù)虛部public:complex();//無(wú)參構(gòu)造函數(shù)complex(doubler,doublei);//2參構(gòu)造函數(shù)complexaddCom(complexc2);//調(diào)用者對(duì)象與對(duì)象c2相加,返回complex類(lèi)對(duì)象voidoutCom();//輸出調(diào)用者對(duì)象的有關(guān)數(shù)據(jù)(各分量)};

進(jìn)一步,在類(lèi)中添加對(duì)復(fù)數(shù)進(jìn)行其他基本運(yùn)算(如,復(fù)數(shù)減、乘、除、取模等)的相應(yīng)成員函數(shù),并通過(guò)主函數(shù)處的調(diào)用來(lái)驗(yàn)證各函數(shù)的使用正確性!..………………….5

3.1需求分析…………………………………………………………………………..53.2概要設(shè)計(jì)………………………………………………………………………...53.3詳細(xì)設(shè)計(jì)與編碼………………………………………………………………...63.4調(diào)試分析………………………………………………………………………..63.5用戶(hù)使用說(shuō)明………………………………………………………………….73.6設(shè)計(jì)心得………………………………………………………………………..7

第四題

6編寫(xiě)一個(gè)具有如下樣式的類(lèi)模板tmplt,用于實(shí)現(xiàn)所謂的反序輸出問(wèn)題,其中使用了類(lèi)型參數(shù)T(使所處理的元素類(lèi)型可變化)以及普通參數(shù)n(元素個(gè)數(shù)也可變化):templateclasstmplt{Tarr[n];//n個(gè)T類(lèi)型的數(shù)據(jù)存放于數(shù)組arr之中public:voiddataIn();//從鍵盤(pán)輸入n個(gè)T類(lèi)型數(shù)據(jù)放入arr數(shù)組中voidreverseOut();//將arr數(shù)組中的數(shù)據(jù)按輸入的相反順序輸出};

………………………………………………………………….……………………..74.1需求分析…………………………………………………………………………..74.2概要設(shè)計(jì)………………………………………………………………………...74.3詳細(xì)設(shè)計(jì)與編碼………………………………………………………………...84.4調(diào)試分析………………………………………………………………………...84.5用戶(hù)使用說(shuō)明………………………………………………………………….94.6設(shè)計(jì)心得………………………………………………………………………...10

第五題可視化編程

用你熟悉的一種可視化編程語(yǔ)言實(shí)現(xiàn)以下漢諾塔演示程序(可以參考附件中的程序代碼)。5.1需求分析…………………………………………………………………………..115.2概要設(shè)計(jì)………………………………………………………………………...125.3詳細(xì)設(shè)計(jì)與編碼………………………………………………………………...135.4調(diào)試分析………………………………………………………………………...145.5用戶(hù)使用說(shuō)明………………………………………………………………….155.6設(shè)計(jì)心得………………………………………………………………………...15

數(shù)據(jù)結(jié)構(gòu)第六題

2假設(shè)有一個(gè)循環(huán)鏈表的長(zhǎng)度大于1,且表中既無(wú)頭結(jié)點(diǎn)也無(wú)頭指針。已知p為指向鏈表中某結(jié)點(diǎn)的指針,試編寫(xiě)算法在鏈表中刪除結(jié)點(diǎn)p的前趨結(jié)點(diǎn)。

6.1需求分析…………………………………………………………………………..176.2概要設(shè)計(jì)………………………………………………………………………...176.3詳細(xì)設(shè)計(jì)與編碼………………………………………………………………...176.4調(diào)試分析………………………………………………………………………...186.5用戶(hù)使用說(shuō)明…………………………………………………………………186.6設(shè)計(jì)心得………………………………………………………………………...18

第七題編程序,按如下方法求A矩陣的轉(zhuǎn)置矩陣B:輸入兩個(gè)正整數(shù)m和n,而后通過(guò)

使用指針配合new運(yùn)算符生成一個(gè)m行n列的二維動(dòng)態(tài)數(shù)組A以及另一個(gè)n行m列的二維動(dòng)態(tài)數(shù)組B,之后為A輸入數(shù)據(jù)(A矩陣數(shù)據(jù)),進(jìn)而求出其轉(zhuǎn)置矩陣B(數(shù)據(jù)放動(dòng)態(tài)數(shù)組B中)并輸出結(jié)果。

7.1需求分析…………………………………………………………………………..197.2概要設(shè)計(jì)………………………………………………………………………...197.3詳細(xì)設(shè)計(jì)與編碼………………………………………………………………...197.4調(diào)試分析………………………………………………………………………...197.5用戶(hù)使用說(shuō)明………………………………………………………………….197.6設(shè)計(jì)心得………………………………………………………………………...20

1面向過(guò)程第5題5.

編程序,使用戶(hù)任意輸入一個(gè)年份以及該年的1

月1日是星期幾,而后任意指定某一天(再輸入該年的任意一個(gè)月份日期),由程序計(jì)算出這一天是星期幾。注意,2月份閏年為29天,非閏年為28天;可被4整除而不可被100整除的年份、或者可被400整除的年份均為閏年。//思考:利用元年元月元日(即1年1月1日)是星期一的已知事實(shí),可對(duì)程序進(jìn)行改造,讓用戶(hù)僅輸入一個(gè)表示日期的年月日,則程序就應(yīng)計(jì)算出那一天是星期幾。

需求分析:

當(dāng)我們處理查找具體年份月日是周幾的問(wèn)題,往往會(huì)遇到閏年平年的問(wèn)題,還有七天一循環(huán)的問(wèn)題。因此實(shí)現(xiàn)此類(lèi)算法是很有必要的。1.2概要設(shè)計(jì):

對(duì)于指定具體年月日所在本年的第多少天,有如下算法。

intsum_day(intmonth,intday){inti;intday_tab[12]={31,28,31,30,31,30,31,31,30,31,30,31};for(i=0;i=3)days=days+1;s=s+(days-1)%7;if(s>7)s=s%7;

cout

intyear,month,day,days,s;coutyear>>s;Intyear,month,day,days,s;coutmonth>>day;

days=sum_day(month,day);if(leap(year)&&month>=3)

Cin>>year>>s;days=days+1;

Cin>>month>>days=s+(days-1)%7;

;if(s>7)

s=s%7;

cout

Cout

1.year,month,day,days,s的類(lèi)型是int型的。

2.對(duì)于平年閏年的分析,要分別對(duì)待,加以區(qū)分。3.注意體會(huì)嘗試程序的健壯性。4.嘗試用其他方法完成該程序

1.5用戶(hù)說(shuō)明

用戶(hù)可直接通過(guò)鍵盤(pán)向界面輸入你指定年份1月1日是星期幾,然后輸入本年的月日,即可在屏幕上得到本年指定年月日是周幾了。1.6設(shè)計(jì)心得:

在這個(gè)程序設(shè)計(jì)中,所用的都是最基本的知識(shí),對(duì)于最基本的知識(shí)一定要達(dá)到熟練的程度,才能熟中生巧,設(shè)計(jì)出高質(zhì)量的程序。

2.面向過(guò)程第7題將輸入的羅馬數(shù)據(jù)化為10進(jìn)制數(shù)。假設(shè)羅馬數(shù)據(jù)中

只使用如下7個(gè)“基值”字母:M、D、C、L、X、V、I,分別用來(lái)表示1000、500、100、50、10、5、1。

2.1需求分析:

我們?cè)谏钪谐?huì)遇見(jiàn)用羅馬數(shù)字表示的代碼或者數(shù)學(xué)、物理等學(xué)習(xí)過(guò)程中,往往會(huì)遇到將羅馬數(shù)字轉(zhuǎn)化為十進(jìn)制數(shù)的計(jì)算,設(shè)計(jì)一個(gè)簡(jiǎn)單的轉(zhuǎn)換程序是很有意義的2.2概要設(shè)計(jì)

將輸入的10進(jìn)制正整數(shù)轉(zhuǎn)換為羅馬數(shù)據(jù)。假設(shè)羅馬數(shù)據(jù)中只使用“基值”字母:M、D、C、L、X、V、I,分別用來(lái)表示1000、500、100、50、10、5、1。顯然是一個(gè)翻譯程序,肯定是將一種表達(dá)形式換算成另一種表達(dá)形式。該題是把羅馬數(shù)字轉(zhuǎn)換成十進(jìn)制數(shù),初步設(shè)想:對(duì)于每個(gè)輸入的字母,用一個(gè)算法返回一個(gè)指定的數(shù)值,算法如下:

case"M":return1000;break;case"D":return500;break;case"C":return100;break;case"L":return50;break;case"X":return10;break;case"V":return5;break;case"I":return1;break;

對(duì)于羅馬數(shù)據(jù)中每個(gè)字母對(duì)應(yīng)數(shù)據(jù)累加過(guò)程,我們有如下算法:

while((y=getchar())!="\\n"){if(f(x)

case"I":return1;break;}}

運(yùn)行結(jié)果如下:

Cout

2.4調(diào)試分析

1程序開(kāi)始不可少語(yǔ)句intf(char);intm=0;

charx,y;//設(shè)“基值”并作零初始化,若不做初始化,字母輸出任意值。2.將對(duì)應(yīng)的字母返回對(duì)應(yīng)的值,然后把數(shù)值累加起來(lái),除了對(duì)應(yīng)之外沒(méi)有其他難點(diǎn)

3.嘗試著用其他方法編寫(xiě)2.5用戶(hù)使用說(shuō)明:

用戶(hù)直接從鍵盤(pán)輸入羅馬數(shù)字,按回車(chē)鍵可以方便得到輸出的阿拉伯?dāng)?shù)字。

2.6設(shè)計(jì)心得:

此程序在設(shè)計(jì)之前,一定要分析好設(shè)計(jì)思路,分析每個(gè)羅馬字母中返回的數(shù)值,做好相應(yīng)的處理。

//第三題1.自定義一個(gè)示意性的復(fù)數(shù)類(lèi)型complex,其中含有若干個(gè)成員函數(shù),//使用該類(lèi)可以完成復(fù)數(shù)的加法以及對(duì)復(fù)數(shù)的輸出。//

//請(qǐng)完成類(lèi)定義,并編制主函數(shù),說(shuō)明complex類(lèi)對(duì)象,對(duì)定義的各成員函數(shù)進(jìn)行調(diào)用。

3.1需求分析

運(yùn)用對(duì)象實(shí)現(xiàn)該算法,說(shuō)明complex類(lèi)對(duì)象,對(duì)定義的各成員函數(shù)進(jìn)行調(diào)用,是很有必要的。3.2概要設(shè)計(jì)classComplex{

public:

Complex(){real=0;imag=0;}//無(wú)參構(gòu)造函數(shù)

Complex(doubler,doublei){real=r;imag=i;}//2參構(gòu)造函數(shù)ComplexaddCom(Complex&c2);//實(shí)現(xiàn)加法運(yùn)算;ComplexaddCom2(Complex&d2);//實(shí)現(xiàn)減法運(yùn)算;ComplexaddCom3(Complex&e2);//實(shí)現(xiàn)乘法運(yùn)算;ComplexaddCom4(Complex&f2);//實(shí)現(xiàn)除法運(yùn)算;voidoutCom();//輸出結(jié)果運(yùn)算private:

doublereal;//復(fù)數(shù)實(shí)部doubleimag;//復(fù)數(shù)虛部};

3.3詳細(xì)設(shè)計(jì)與編碼#includeusingnamespacestd;classComplex{

public:

Complex(){real=0;imag=0;}

Complex(doubler,doublei){real=r;imag=i;}ComplexaddCom(Complex&c2);ComplexaddCom2(Complex&d2);ComplexaddCom3(Complex&e2);ComplexaddCom4(Complex&f2);voidoutCom();private:doublereal;doubleimag;};

ComplexComplex::addCom(Complex&c2){Complexc;

c.real=real+c2.real;c.imag=imag+c2.imag;returnc;}

ComplexComplex::addCom2(Complex&d2){Complexd;

d.real=real-d2.real;d.imag=imag-d2.imag;returnd;}

ComplexComplex::addCom3(Complex&e2){Complexe;

e.real=real*e2.real-imag*e2.imag;e.imag=real*e2.imag+e2.real*imag;returne;}

ComplexComplex::addCom4(Complex&f2){Complexf;

f.real=(real*f2.real+imag*f2.imag)/(f2.real*f2.real+f2.imag*f2.imag);f.imag=(f2.real*imag-real*f2.imag)/(f2.real*f2.real+f2.imag*f2.imag);returnf;}

voidComplex::outCom()

{cout

開(kāi)始聲明一個(gè)Complex類(lèi),并定義doublereal、imag;聲明類(lèi)的函數(shù),構(gòu)造函數(shù),加減乘除運(yùn)算

c.real=real+c2.real;c.imag=imag+c2.imag;d.real=real-d2.real;d.imag=imag-d2.imag;e.real=real*e2.real-imag*e2.imag;e.imag=real*e2.imag+e2.real*imag;

f.real=(real*f2.real+imag*f2.imag)/(f2.real*f2.real+f2.imag*f2.imag);f.imag=(f2.real*imag-real*f2.imag)/(f2.real*f2.real+f2.imag*f2.imag);輸出其加減乘除的值終止

運(yùn)行結(jié)果如下:

3.4調(diào)試分析

1.定義Complex類(lèi)很重要。

2.在Complex類(lèi)中實(shí)現(xiàn)對(duì)兩復(fù)數(shù)的加減乘除運(yùn)算。

3.寫(xiě)程序時(shí)的位置對(duì)應(yīng),以便查錯(cuò)。

3.5用戶(hù)使用說(shuō)明:屏幕直接顯示。3.6設(shè)計(jì)心得:

通過(guò)此題,我對(duì)上學(xué)期所學(xué)類(lèi)的定義以及復(fù)數(shù)運(yùn)算達(dá)到了復(fù)習(xí)的效果,熟悉了在類(lèi)中調(diào)用個(gè)復(fù)數(shù)進(jìn)行加減乘除運(yùn)算的基本操作。對(duì)于期原理有一定的掌握,所以這個(gè)程序設(shè)計(jì)倒是不難。

第四題/*6.

編寫(xiě)一個(gè)具有如下樣式的類(lèi)模板tmplt,用于實(shí)現(xiàn)所謂的反序輸出問(wèn)

題,

其中使用了類(lèi)型參數(shù)T(使所處理的元素類(lèi)型可變化)以及普通參數(shù)n(元素個(gè)數(shù)也可變化):

templateclasstmplt{

Tarr[n];//n個(gè)T類(lèi)型的數(shù)據(jù)存放于數(shù)組arr之中public:voiddataIn();//從鍵盤(pán)輸入n個(gè)T類(lèi)型數(shù)據(jù)放入arr數(shù)組中voidreverseOut();//將arr數(shù)組中的數(shù)據(jù)按輸入的相反順序輸出};而后編制主函數(shù),將類(lèi)模板實(shí)例化為某個(gè)具體的類(lèi)并說(shuō)明類(lèi)對(duì)象,之后通過(guò)對(duì)象調(diào)用其負(fù)責(zé)輸入數(shù)據(jù)的成員函數(shù),再通過(guò)對(duì)象調(diào)用另一成員函數(shù)按反序輸出那些輸入數(shù)據(jù)。*/

4.1需求分析

應(yīng)用類(lèi)模板tmplt,用于實(shí)現(xiàn)所謂的反序輸出問(wèn)題,使用了類(lèi)型參數(shù)T以及普通參數(shù)n。4.2概要設(shè)計(jì)

templateclasstmplt{Tarr[n];//n個(gè)T類(lèi)型的數(shù)據(jù)存放于數(shù)組arr之中public:voiddataIn();//從鍵盤(pán)輸入n個(gè)T類(lèi)型數(shù)據(jù)放入arr數(shù)組中voidreverseOut();//將arr數(shù)組中的數(shù)據(jù)按輸入的相反順序輸出};

4.3詳細(xì)設(shè)計(jì)與編碼#include#includeusingnamespacestd;templateclasstmplt{Tarr[n];public:

voiddateIn(){inti;

for(i=0;i>arr[i];};

voidreverseOut(){inti;

for(i=n-1;i>=0;i--)coutCout

用戶(hù)可以輸入若干組不同大小的數(shù)據(jù),然后按回車(chē)鍵,程序系統(tǒng)會(huì)自動(dòng)在屏幕上生成用戶(hù)想要得到的結(jié)果。

4.6設(shè)計(jì)心得:

通過(guò)該程序的設(shè)計(jì),更體會(huì)到在大規(guī)模的信息調(diào)用類(lèi)以及生成類(lèi)會(huì)更好,更進(jìn)一步培養(yǎng)自己的編程風(fēng)格,先整體規(guī)劃,然后一步一步實(shí)現(xiàn);出錯(cuò)處理的能力。

第五題.可視化編程

用你熟悉的一種可視化編程語(yǔ)言實(shí)現(xiàn)以下漢諾塔演示程序(可以參考附件中的程序代碼)。

5.1需求分析

實(shí)現(xiàn)漢諾塔從第一個(gè)位置移到第三個(gè)位置

實(shí)5.2概要設(shè)計(jì)

實(shí)現(xiàn)實(shí)程序是用MFC制作,在進(jìn)入MFC時(shí)選擇基本對(duì)話框來(lái)建立工程,然

后根據(jù)題目圖形的需求,在工作區(qū)的Resourceview中的Dialog進(jìn)行框架的設(shè)計(jì),跟著視頻思路往下走。

5.3詳細(xì)設(shè)計(jì)與編碼實(shí)現(xiàn)過(guò)程

可視

編程

5.4調(diào)試分析

移動(dòng)過(guò)程中要細(xì)心,按指定程序移動(dòng)。

5.5用戶(hù)使用說(shuō)明

本程序是漢諾塔程序使用很簡(jiǎn)單,直接點(diǎn)擊按鈕移動(dòng)就能得到結(jié)果。5.6設(shè)計(jì)心得可視化編程編程由于以前沒(méi)接觸過(guò)所以較難,許多函數(shù)都

要查資料,或上網(wǎng)搜尋。

第六題

6數(shù)據(jù)結(jié)構(gòu)第二題假設(shè)有一個(gè)循環(huán)鏈表的長(zhǎng)度大于1,且表中既無(wú)

頭結(jié)點(diǎn)也無(wú)頭指針。已知p為指向鏈表中某結(jié)點(diǎn)的指針,試編寫(xiě)算法在鏈表中刪除結(jié)點(diǎn)p的前趨結(jié)點(diǎn)。6.1需求分析

在數(shù)據(jù)結(jié)構(gòu)的學(xué)習(xí)中,鏈表是最常見(jiàn)的存儲(chǔ)方式,鏈表的插入,刪除,改正也就是很常用的操作,對(duì)它的學(xué)習(xí)就顯得很有必要而且很有意義。

6.2概要設(shè)計(jì)

1.對(duì)節(jié)點(diǎn)的刪除,無(wú)疑先要定義一個(gè)結(jié)構(gòu)體和指針,運(yùn)來(lái)存放和查找要?jiǎng)h除的節(jié)點(diǎn)structNode*next

2.設(shè)計(jì)一個(gè)類(lèi)求前驅(qū)節(jié)點(diǎn):node1*getPriorNode(node1*node)3.刪除指向結(jié)點(diǎn)的前驅(qū)結(jié)點(diǎn):delPriorNode(node1*node)4.輸出原始鏈表:printList(node1*node)

5.主函數(shù)將操作后的鏈表輸出。

6.3詳細(xì)設(shè)計(jì)與編碼#include#include

typedefstruct_node1{

struct_node1*next;intvalue;}node1;

node1*getPriorNode(node1*node){

node1*next;

if(!node){

returnNULL;}

next=node->next;

while(node!=next->next){

next=next->next;}

returnnext;}

voiddelPriorNode(node1*node){

node1*prior=getPriorNode(node);

if(prior){

getPriorNode(prior)->next=prior->next;}}

voidprintList(node1*node){

node1*next;

開(kāi)始node1a,b,c,d,e,f,g;對(duì)每個(gè)節(jié)點(diǎn)的數(shù)值區(qū)賦值,以及說(shuō)明其指針指向的地址printList(&a);delPriorNode(&c);printList(&a);結(jié)束

if(!node){

return;}

printf("%d",node->value);next=node->next;while(node!=next){

printf("-->%d",next->value);next=next->next;}

printf("\\n");}

voidmain(){

node1a,b,c,d,e,f,g;

a.value=1;b.value=2;c.value=3;d.value=4;e.value=5;f.value=6;g.value=7;

a.next=&b;b.next=&c;c.next=&d;d.next=&e;e.next=&f;f.next=&g;g.next=&a;

printf("Originallist:");printList(&a);delPriorNode(&c);

printf("Deletednode3"spriornode(node2):");printList(&a);}

運(yùn)行結(jié)果:

6.4調(diào)試分析

編寫(xiě)過(guò)程要細(xì)心,缺分號(hào),括號(hào)的現(xiàn)象也有時(shí)發(fā)生

6.5用戶(hù)使用說(shuō)明

程序中的數(shù)字是從編程時(shí)輸入的,平心而論該程序還有很大的改編空間,是一個(gè)靜態(tài)的檢驗(yàn)程序

6.6設(shè)計(jì)心得

進(jìn)一步掌握了鏈表的基本操作,前驅(qū)指針在查找節(jié)點(diǎn)時(shí)的作用,類(lèi)的整體設(shè)計(jì)和個(gè)類(lèi)之間的關(guān)系,弄懂這些編程的要點(diǎn),無(wú)論是在今后的學(xué)習(xí)還是調(diào)試過(guò)程中都是很有意義的。

7據(jù)結(jié)構(gòu)第三題

/*3.編程序,按如下方法求A矩陣的轉(zhuǎn)置矩陣B:輸入兩個(gè)正整數(shù)m和n,而后通過(guò)使用指針配合new運(yùn)算符生成一個(gè)m行n列的二維動(dòng)態(tài)數(shù)組A以及另一個(gè)n行m列的二維動(dòng)態(tài)數(shù)組B,之后為A輸入數(shù)據(jù)(A矩陣數(shù)據(jù)),進(jìn)而求出其轉(zhuǎn)置矩陣B(數(shù)據(jù)放動(dòng)態(tài)數(shù)組B中)并輸出結(jié)果。*/

7..1需求分析

矩陣是物理數(shù)學(xué)中極其常見(jiàn)的數(shù)學(xué)工具,研究它的運(yùn)算也是十分重要的,特別的在計(jì)算機(jī)程序中的應(yīng)用是更重要的

7.2概要設(shè)計(jì)

輸入兩個(gè)正整數(shù)m和n,而后通過(guò)使用指針配合new運(yùn)算符生成一個(gè)m行n列的二維動(dòng)態(tài)數(shù)組A以及另一個(gè)n行m列的二維動(dòng)態(tài)數(shù)組B,之后為A輸入數(shù)據(jù)(A矩陣數(shù)據(jù)),進(jìn)而求出其轉(zhuǎn)置矩陣B(數(shù)據(jù)放動(dòng)態(tài)數(shù)組B中)。既是要求又是提示,故有一下提綱:

1.A=newint*[m];B=newint*[n];建立動(dòng)態(tài)數(shù)組分別存放行和列

2.for(a=0;a

7.3詳細(xì)設(shè)計(jì)與編碼

#includeusingnamespacestd;voidmain(){inta,b,m,n;int**A,**B;cin>>m>>n;A=newint*[m];for(a=0;a

結(jié)束刪除動(dòng)態(tài)數(shù)組A,B.在n行m列的二維數(shù)組中依次賦值。cout

7.4調(diào)試分析

本程序的編寫(xiě),調(diào)試費(fèi)了好大的力氣,具體的:

1.int**A,**B指針的定義符號(hào)問(wèn)題,即指向指針的指針

2.A=newint*[m],B=newint*[n]動(dòng)態(tài)數(shù)組的定義問(wèn)題

3.for(a=0;a

8

課程設(shè)計(jì)總結(jié):

通過(guò)多次軟件課程設(shè)計(jì)學(xué)習(xí),我已經(jīng)基本熟練對(duì)面向過(guò)程,面向?qū)ο,可視化編程,?shù)據(jù)結(jié)構(gòu)的基本操作。并為以后進(jìn)一步學(xué)習(xí)計(jì)算機(jī)編程奠定了良好的基礎(chǔ)。相信在以后的學(xué)習(xí)中,我能更一步領(lǐng)悟到編程給我?guī)?lái)的快樂(lè)。

友情提示:本文中關(guān)于《劉玉繪 軟件工程課程設(shè)計(jì)總結(jié)報(bào)告》給出的范例僅供您參考拓展思維使用,劉玉繪 軟件工程課程設(shè)計(jì)總結(jié)報(bào)告:該篇文章建議您自主創(chuàng)作。

來(lái)源:網(wǎng)絡(luò)整理 免責(zé)聲明:本文僅限學(xué)習(xí)分享,如產(chǎn)生版權(quán)問(wèn)題,請(qǐng)聯(lián)系我們及時(shí)刪除。


劉玉繪 軟件工程課程設(shè)計(jì)總結(jié)報(bào)告》由互聯(lián)網(wǎng)用戶(hù)整理提供,轉(zhuǎn)載分享請(qǐng)保留原作者信息,謝謝!
鏈接地址:http://www.hmlawpc.com/gongwen/693809.html