欧洲免费无码视频在线,亚洲日韩av中文字幕高清一区二区,亚洲人成人77777网站,韩国特黄毛片一级毛片免费,精品国产欧美,成人午夜精选视频在线观看免费,五月情天丁香宗合成人网

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

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

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

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

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

報(bào)告書

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

班級組別:軟件082班

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

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

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

鄭志安

編號:()字號

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

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

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

201*年1月

鄭志安

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

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

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

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

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

類別題目序號面向過程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)教師評閱書

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

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

成績:

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

月日3

目錄

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

第一部分基礎(chǔ)題

第一題1面向過程

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

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

第二題

7.將輸入的羅馬數(shù)據(jù)化為10進(jìn)制數(shù)。假設(shè)羅馬數(shù)據(jù)中只使用如下7個(gè)“基值”字母:M、D、C、L、X、V、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,分別用來表示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用戶使用說明………………………………………………………………….52.6設(shè)計(jì)心得………………………………………………………………………...5

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

第三題

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

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

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

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

第四題

6編寫一個(gè)具有如下樣式的類模板tmplt,用于實(shí)現(xiàn)所謂的反序輸出問題,其中使用了類型參數(shù)T(使所處理的元素類型可變化)以及普通參數(shù)n(元素個(gè)數(shù)也可變化):templateclasstmplt{Tarr[n];//n個(gè)T類型的數(shù)據(jù)存放于數(shù)組arr之中public:voiddataIn();//從鍵盤輸入n個(gè)T類型數(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用戶使用說明………………………………………………………………….94.6設(shè)計(jì)心得………………………………………………………………………...10

第五題可視化編程

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

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

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

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

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

使用指針配合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用戶使用說明………………………………………………………………….197.6設(shè)計(jì)心得………………………………………………………………………...20

1面向過程第5題5.

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

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

需求分析:

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

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

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的類型是int型的。

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

1.5用戶說明

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

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

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

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

2.1需求分析:

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

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

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

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

case"I":return1;break;}}

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

Cout

2.4調(diào)試分析

1程序開始不可少語句intf(char);intm=0;

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

3.嘗試著用其他方法編寫2.5用戶使用說明:

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

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

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

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

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

3.1需求分析

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

public:

Complex(){real=0;imag=0;}//無參構(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

開始聲明一個(gè)Complex類,并定義doublereal、imag;聲明類的函數(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類很重要。

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

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

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

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

第四題/*6.

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

題,

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

templateclasstmplt{

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

4.1需求分析

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

templateclasstmplt{Tarr[n];//n個(gè)T類型的數(shù)據(jù)存放于數(shù)組arr之中public:voiddataIn();//從鍵盤輸入n個(gè)T類型數(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

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

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

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

第五題.可視化編程

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

5.1需求分析

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

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

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

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

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

可視

編程

5.4調(diào)試分析

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

5.5用戶使用說明

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

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

第六題

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

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

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

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

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

2.設(shè)計(jì)一個(gè)類求前驅(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;

開始node1a,b,c,d,e,f,g;對每個(gè)節(jié)點(diǎn)的數(shù)值區(qū)賦值,以及說明其指針指向的地址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)試分析

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

6.5用戶使用說明

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

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

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

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

/*3.編程序,按如下方法求A矩陣的轉(zhuǎn)置矩陣B:輸入兩個(gè)正整數(shù)m和n,而后通過使用指針配合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é)中極其常見的數(shù)學(xué)工具,研究它的運(yùn)算也是十分重要的,特別的在計(jì)算機(jī)程序中的應(yīng)用是更重要的

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

輸入兩個(gè)正整數(shù)m和n,而后通過使用指針配合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)試分析

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

1.int**A,**B指針的定義符號問題,即指向指針的指針

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

3.for(a=0;a

8

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

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

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

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


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