實(shí)驗(yàn)2-C++對(duì)C的擴(kuò)充_第1頁(yè)
實(shí)驗(yàn)2-C++對(duì)C的擴(kuò)充_第2頁(yè)
實(shí)驗(yàn)2-C++對(duì)C的擴(kuò)充_第3頁(yè)
實(shí)驗(yàn)2-C++對(duì)C的擴(kuò)充_第4頁(yè)
實(shí)驗(yàn)2-C++對(duì)C的擴(kuò)充_第5頁(yè)
已閱讀5頁(yè),還剩4頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

電子信息學(xué)院實(shí)驗(yàn)報(bào)告書(shū)課程名:面向?qū)ο蟪绦蛟O(shè)計(jì)題目:實(shí)驗(yàn)2C++對(duì)C的擴(kuò)充實(shí)驗(yàn)類別:設(shè)計(jì)研究型班級(jí):BX1004學(xué)號(hào):101003040420姓名:施程程評(píng)語(yǔ):評(píng)語(yǔ):實(shí)驗(yàn)態(tài)度:認(rèn)真()一般()差()實(shí)驗(yàn)結(jié)果:正確()部分正確()錯(cuò)()實(shí)驗(yàn)理論:掌握()熟悉()了解()不懂()操作技能:強(qiáng)()一般()差()實(shí)驗(yàn)報(bào)告:好()一般()差()成績(jī):指導(dǎo)教師:批閱時(shí)間:年月日1、實(shí)驗(yàn)?zāi)康模?)了解在面向過(guò)程程序設(shè)計(jì)中功能的擴(kuò)充與增強(qiáng),并善于在編寫(xiě)過(guò)程中應(yīng)用這些新的功能。(2)進(jìn)一步熟悉在所用的系統(tǒng)上編輯、編譯、連接和運(yùn)行C++程序的方法。

(3)進(jìn)一步熟悉C++程序的結(jié)構(gòu)和編程方法。2、實(shí)驗(yàn)內(nèi)容要求事先編好解決下面問(wèn)題的程序,然后上機(jī)輸入并調(diào)試運(yùn)行。輸入以下程序,進(jìn)行編譯,觀察編譯情況,如果有錯(cuò)誤,請(qǐng)修改程序,再進(jìn)行編譯,直到?jīng)]有錯(cuò)誤,然后進(jìn)行連接和運(yùn)行,分析運(yùn)行結(jié)果。#include<iostream>

using

namespace

std;intmain(){inta,b;c=add(a,b)

cout<<“a+b=”<<c<<endl;

return0;}int

add(int

x,int

y)

{z=x+y;return(z);}編一個(gè)程序,用來(lái)求2個(gè)或3個(gè)正整數(shù)中的最大數(shù)。用不帶默認(rèn)參數(shù)的函數(shù)實(shí)現(xiàn)。用帶有默認(rèn)參數(shù)的函數(shù)實(shí)現(xiàn)。對(duì)比兩種方法,分析用帶有默認(rèn)參數(shù)的函數(shù)的優(yōu)點(diǎn)和應(yīng)用場(chǎng)合,總結(jié)如何選擇默認(rèn)b參數(shù)的值。請(qǐng)分析本題中默認(rèn)參數(shù)的值應(yīng)該在什么范圍。對(duì)3個(gè)變量按由小到大順序排序,要求使用變量的引用。使用指針?lè)椒ㄊ褂米兞康牡囊谜?qǐng)總結(jié)引用時(shí)要注意什么問(wèn)題。有5個(gè)字符串,要求對(duì)他們按由小到大的順序排列,用string方法,

編譯一個(gè)程序,用同一個(gè)函數(shù)名對(duì)n個(gè)數(shù)據(jù)進(jìn)行從小到大排序,數(shù)據(jù)類型可以是整型、單精度型、雙精度型。用重載函數(shù)實(shí)現(xiàn)。用函數(shù)模板實(shí)現(xiàn)。比較這兩種方法各有什么特點(diǎn),什么情況下可以用函數(shù)模板代替重載函數(shù)?

3.實(shí)驗(yàn)結(jié)果(1)程序:#include<iostream>}voidsort(int&i,int&j,int&k){voidchange(int&,int&);if(i>j)change(i,j);if(i>k)change(i,k);if(j>k)change(j,k);}voidchange(int&x,int&y){inttemp; temp=x; x=y; y=temp;}運(yùn)行結(jié)果:變量的“引用”就是變量的別名,引用的作用是為一個(gè)變量起另一個(gè)名字,以便在需要時(shí)可以方便、間接地應(yīng)用該變量。在引用時(shí)要注意:由于引用不是獨(dú)立的變量,編譯系統(tǒng)不給它單獨(dú)分配存儲(chǔ)單元,因此在建立引用時(shí)只有聲明,沒(méi)有定義,只是聲明它和原有的某一變量的關(guān)系。程序:#include<iostream>#include<string>usingnamespacestd;intmain(){inti;stringstr[5]={"shang","hai","string","C++","include"};voidsort(string[]);sort(str);cout<<"thesortedstrings:"<<endl;for(i=0;i<5;i++)cout<<str[i]<<"";cout<<endl;return0;}voidsort(strings[]){inti,j;stringt;for(j=0;j<5;j++)for(i=0;i<5-j;i++)if(s[i]>s[i+1]) {t=s[i];s[i]=s[i+1];s[i+1]=t;}}運(yùn)行結(jié)果:程序1:用重載函數(shù)實(shí)現(xiàn)#include<iostream>#include<string>usingnamespacestd;voidsort(longa[]){inti,j;longt;for(j=0;j<5;j++)for(i=0;i<5-j;i++)if(a[i]>a[i+1]) {t=a[i];a[i]=a[i+1];a[i+1]=t;}cout<<"thesortednumbers:"<<endl;for(i=0;i<5;i++) cout<<a[i]<<"";cout<<endl;}voidsort(inta[]){inti,j,t;for(j=0;j<5;j++)for(i=0;i<5-j;i++)if(a[i]>a[i+1]) {t=a[i];a[i]=a[i+1];a[i+1]=t;}cout<<"thesortednumbers:"<<endl;for(i=0;i<5;i++) cout<<a[i]<<"";cout<<endl;}voidsort(floata[]){inti,j;floatt;for(j=0;j<5;j++)for(i=0;i<5-j;i++)if(a[i]>a[i+1]) {t=a[i];a[i]=a[i+1];a[i+1]=t;}cout<<"thesortednumbers:"<<endl;for(i=0;i<5;i++) cout<<a[i]<<"";cout<<endl;}intmain(){longa[5]={12345,10000,87663,27958,36754};intb[5]={4,3,7,-5,9};floatc[5]={1.2,-3.4,6.7,-2.6,4.5};sort(a);sort(b);sort(c);return0;}運(yùn)行結(jié)果:程序2:用函數(shù)模板實(shí)現(xiàn)#include<iostream>#include<string>usingnamespacestd;template<typenameT>voidsort(Ta[]){inti,j,min;Tt;for(i=0;i<5;i++){min=i;for(j=i+1;j<5;j++) if(a[min]>a[j])min=j; t=a[i];a[i]=a[min];a[min]=t;}cout<<"Thesortednumbersare:"<<endl;for(i=0;i<5;i++) cout<<a[i]<<"";cout<<endl<<endl;}intmain(){longa[5]={12345,10000,87663,27958,36754};intb[5]={4,3,7,-5,9};floatc[5]={1.2,-3.4,6.7,-2.6,4.5};sort(a);sort(b);sort(c);return0;}運(yùn)行結(jié)果:用函數(shù)模版比重載函數(shù)更方便,程序更簡(jiǎn)潔。但是應(yīng)注意函數(shù)模版只適用于函數(shù)的參數(shù)個(gè)數(shù)相同而類型不同,且函數(shù)體相同的情況,如果參數(shù)的個(gè)數(shù)不同,則不能用函數(shù)模版。4.結(jié)果分析與實(shí)驗(yàn)體會(huì)這是C++的第二次實(shí)驗(yàn),實(shí)驗(yàn)內(nèi)容大多是我們的課后作業(yè),這讓我們更

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論