資源描述:
《實(shí)驗(yàn)六繼承與虛函數(shù)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫。
1、(學(xué)院)系:專業(yè):姓名:班級(jí):學(xué)號(hào):指導(dǎo)教師:河北地質(zhì)大學(xué)實(shí)驗(yàn)報(bào)告商學(xué)院物流管理張夢(mèng)宇4141040503414104050316張有華2016年11月7日實(shí)驗(yàn)六繼承與虛函數(shù)目的和要求1.掌握C++關(guān)于數(shù)組的定義、初始化、賦值和使用的方法。2.掌握數(shù)組作為函數(shù)參數(shù)的定義、以及函數(shù)調(diào)用方法。3.掌握指針的定義、初始化和使用方法。4.掌握指針與數(shù)組作力函數(shù)參數(shù)的函數(shù)定義和調(diào)用方法。5.掌握用指針和引用給函數(shù)傳遞參數(shù)。6.了解類的兩種使用方式7.學(xué)習(xí)從現(xiàn)有類派生出新類的方式8.了解在派生類中如何使用基類的成員9.了解基類成員在派生類中的訪問控制10.了解虛函數(shù)對(duì)
2、多態(tài)性的支持二、實(shí)驗(yàn)環(huán)境硬件環(huán)境:計(jì)算機(jī)(windowsxp系統(tǒng))軟件環(huán)境:VC++6.0三、實(shí)驗(yàn)內(nèi)容1.寫一個(gè)程序,程序運(yùn)行時(shí)用戶輸入10個(gè)數(shù)據(jù),程序運(yùn)行結(jié)束,輸出其屮的最大值與最小值。(1)實(shí)現(xiàn)要求■用一個(gè)數(shù)組存放各個(gè)整數(shù);■在主函數(shù)main()中實(shí)現(xiàn)數(shù)據(jù)的輸入和輸出操作,并用一個(gè)函數(shù)實(shí)現(xiàn)求數(shù)組屮元素的最大值與最小值的操作。(2)實(shí)現(xiàn)提示■可以設(shè)計(jì)求數(shù)組屮元素的最大值與最小值操作的函數(shù)原型為:voidsearchMaxMin(intarr[],intn,int*mmax,intmmin)o(3)測(cè)試數(shù)據(jù)輸入:3050213920輸出:max:50min
3、:202.編程,用戶輸入一個(gè)帳號(hào),程序檢查此帳號(hào)是否出現(xiàn)在下面的列表中,如果屬于下列列表屮的帳號(hào),則輸出用戶帳號(hào)合法信息,否則輸出用戶帳號(hào)不存在。565884545201257895122877754184512771302850808015245625555552012505055278258771250255100523165452313852085757665178812004581022(1)實(shí)現(xiàn)要求■用數(shù)組存放所有的帳號(hào);■在主函數(shù)mainO屮實(shí)現(xiàn)數(shù)據(jù)的輸入和輸出操作。(2)實(shí)現(xiàn)提示■(3)測(cè)試數(shù)據(jù)■輸入:8777541■輸出:用戶帳號(hào)合法■輸入
4、:8747541■輸出:用戶帳號(hào)不存在1.數(shù)組排序,從鍵盤讀入若干整數(shù),將它們按由低到高排序輸出。(1)實(shí)現(xiàn)要求■用一個(gè)數(shù)組存放各個(gè)整數(shù);■在主閑數(shù)main()中實(shí)現(xiàn)數(shù)據(jù)的輸入和輸出操作,并用一個(gè)函數(shù)實(shí)現(xiàn)對(duì)數(shù)組元素的排序操作。■排序函數(shù)調(diào)用另一個(gè)函數(shù)swap(int*pa,int*pb)實(shí)現(xiàn)兩個(gè)數(shù)組元素的交換。(2)實(shí)現(xiàn)提示■排序使用簡(jiǎn)單選擇排序法、直接插入排序算法或冒泡排序算法均可。(3)測(cè)試數(shù)據(jù)輸入:3050213920輸出:2021303950簡(jiǎn)單選擇排序算法基本思想從n個(gè)數(shù)中選擇最小的一個(gè),把它和第一個(gè)數(shù)組元素交換;從剩下的n-1個(gè)數(shù)中選擇最小的一
5、個(gè),把它和第二個(gè)數(shù)組元素交換;依此類推,直到從最后兩個(gè)元素中選出倒數(shù)第二小的元素并把它和倒數(shù)第二個(gè)元素交換為止。直接插入排序算法基本思想假?zèng)]待排序的記錄存放在數(shù)組R[l..n]中。初始時(shí),R[l]自成1個(gè)有序區(qū),無序區(qū)為R[2..n]。從i=2起直至為止,依次將R[i]插入當(dāng)前的有序區(qū)中,生成含n個(gè)記錄的有序區(qū)。冒泡排序算法基本思想(1)首先將第一個(gè)記錄的關(guān)鍵字和第二個(gè)記錄的關(guān)鍵字進(jìn)行比較,若為“逆序”(即L.r[lJ.key>L.rL2J.key),則將兩個(gè)記錄交換之,然后比較第二個(gè)記錄和第三個(gè)記錄的關(guān)鍵字。依次類推,直至第ivl個(gè)記錄的關(guān)鍵字和第n個(gè)記
6、錄的關(guān)鍵字比較過為止。這是第一趟冒沲排序,其結(jié)果是使得關(guān)鍵字最大的記錄被安置到最后一個(gè)記錄的位置上;(2)然后進(jìn)行第二趟冒泡排序,對(duì)前面的n-1個(gè)記錄進(jìn)行同樣的操作,其結(jié)果是使關(guān)鍵字次大的記錄被安置到第n-1個(gè)記錄的位置;一般地,第i趟冒泡排序是從L.r[l]到L.r[n-i+ll依次比較相鄰兩個(gè)記錄的關(guān)鍵字,并在“逆序”時(shí)交換相鄰記錄,其結(jié)果是這n-i+1個(gè)記錄屮關(guān)鍵字最大的記錄被交換到第n-i+l的位置上。整個(gè)排序過程需要進(jìn)行K(l7、符串,將它們按由低到高排序輸出。排序的規(guī)則為:先比較兩個(gè)字符串的長(zhǎng)度,長(zhǎng)度短的字符串排在前而,如果長(zhǎng)度相等,則比較字符串的值,按從小到大排序輸出。(1)實(shí)現(xiàn)要求■用一個(gè)字符串?dāng)?shù)組存放各個(gè)字符串;■在主函數(shù)mainO中實(shí)現(xiàn)數(shù)據(jù)的輸入和輸出操作,并用一個(gè)函數(shù)實(shí)現(xiàn)對(duì)數(shù)組元素的排序操作。(2)實(shí)現(xiàn)提示■排序使用簡(jiǎn)單選擇排序法、直接插入排序算法或冒泡排序算法均可。(3)測(cè)試數(shù)據(jù)輸入:JanuaryFebruaryMarchAprilMayJuneJulySeptember輸出:MayJulyJuneAprilMarchJanuaryFebrurarySeptembe
8、r2.編寫一個(gè)單詞轉(zhuǎn)換函數(shù),該函數(shù)具有一個(gè)char*參數(shù)。函數(shù)的功