使用函數(shù)編寫程序

使用函數(shù)編寫程序

ID:27800209

大?。?14.00 KB

頁(yè)數(shù):7頁(yè)

時(shí)間:2018-12-06

使用函數(shù)編寫程序_第1頁(yè)
使用函數(shù)編寫程序_第2頁(yè)
使用函數(shù)編寫程序_第3頁(yè)
使用函數(shù)編寫程序_第4頁(yè)
使用函數(shù)編寫程序_第5頁(yè)
資源描述:

《使用函數(shù)編寫程序》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫(kù)。

1、實(shí)驗(yàn)五使用函數(shù)編寫程序【實(shí)驗(yàn)?zāi)康摹?.熟練掌握函數(shù)的定義和調(diào)用。2.理解函數(shù)的實(shí)參、形參和返回值的概念。3.熟練掌握VC程序調(diào)試方法,包括斷點(diǎn)的設(shè)置和取消,以及單步執(zhí)行跟蹤進(jìn)入函數(shù)和跳出函數(shù)的方法?!緦?shí)驗(yàn)內(nèi)容】5-1調(diào)試示例,從鍵盤輸入一個(gè)正整數(shù)m計(jì)算n!的值,要求定義和調(diào)用函數(shù)fact(n),計(jì)算n!。源程序(有錯(cuò)誤的程序)includevoidmain(){intn;longintf;printf("lnputn:");scant("%d",&n);f=fact(n);printf(,,%d!=%

2、ld",n,f);}longfact(intm){inti;longintproduct;for(i=1;i<=m;i++)product=product*i;returnproduct;}運(yùn)行結(jié)果(改正后程序的運(yùn)行結(jié)果)Inputn:10101=3628800實(shí)驗(yàn)四中我們使用了程序運(yùn)行到光標(biāo)位置調(diào)試程序,本次實(shí)驗(yàn)需要掌握設(shè)置斷點(diǎn),以及單步調(diào)試進(jìn)入函數(shù)和跳出函數(shù)的方法。(1)打開源程序error5_1.cpp,編譯程序,出現(xiàn)的錯(cuò)誤信息:'fact1:undeclaredidentifier'fact*:redefi

3、nition;differenttypemodifiers雙擊該錯(cuò)誤信息,箭頭指向“f=fact(n);”這一行,錯(cuò)誤信息指出函數(shù)“fact”沒有定義,這是因?yàn)閿?shù)據(jù)在調(diào)用前,必須先定義或聲明。在主調(diào)函數(shù)的變量定義前面加上函數(shù)聲明“l(fā)ongfact(intm);”后,重新編譯,連接,都正確。(1)調(diào)試開始,設(shè)置2個(gè)斷點(diǎn)(斷點(diǎn)的作用:程序執(zhí)行到斷點(diǎn)處暫停,使用戶可以觀察當(dāng)前的變量或其它表達(dá)式的值,然后繼續(xù)運(yùn)行),先把光標(biāo)定位到要設(shè)置斷點(diǎn)的位置,然后單擊編譯工具條上的也(Inert/RemoveBreakpoint(F9))

4、,斷點(diǎn)就設(shè)置好了(如圖5.1所示)。如果耍取消斷點(diǎn),只要把光標(biāo)放到耍取消的斷點(diǎn)處,單擊也,這個(gè)斷點(diǎn)就取消了。圖5」設(shè)置斷點(diǎn)(2)單擊編譯工具條凰I(go(F5)),運(yùn)行程序,用戶輸入n的值10后,程序運(yùn)行到第一個(gè)斷點(diǎn)位置暫停(如圖5.2所示)。圖5.2程序運(yùn)行到斷點(diǎn)位置(1)單擊內(nèi)(StepInto(F11))進(jìn)入函數(shù)fact()調(diào)試,箭頭表示程序已經(jīng)執(zhí)行到函數(shù)怡ct()內(nèi)(如圖5.3所示)。(2)使用舸,在函數(shù)fact()中設(shè)置程序的第3個(gè)斷點(diǎn)(如圖5.3所示)。(3)單擊凰I(go(F5)),程序直接運(yùn)行到斷點(diǎn)處,

5、暫停(如圖5.4所示),在變量窗口觀察到product的值是-2903040,不止確,因?yàn)樽兞縫roduct未賦初值,加上語句product=1后,按以上的步驟,重新編譯、連接,運(yùn)行到第3個(gè)斷點(diǎn)處,變量窗口中product的值正確。(4)現(xiàn)在需要從被調(diào)函數(shù)返回到主調(diào)函數(shù),單擊調(diào)試工具條屮的{*?(StepOut(ShaftF11)),程序返回主調(diào)函數(shù)繼續(xù)執(zhí)行(如圖5.5所示)。(5)繼續(xù)單擊凰I(go(F5)),程序執(zhí)行到最后(如圖5.6所示),在運(yùn)行窗口輸出101=3628800,與題目要求的結(jié)果一致。(6)單擊終止

6、調(diào)試圖標(biāo)劭(StopDebugging(Shaft+F5)),程序調(diào)試結(jié)束。圖5?3進(jìn)入函數(shù)fact()調(diào)試,并在運(yùn)行時(shí)設(shè)置斷點(diǎn)圖5.4程序從函數(shù)fact()開始直接運(yùn)行到第3個(gè)斷點(diǎn)的位置(wtum前面)test創(chuàng)夭中文VC—[break][test,eppj圖5.5程序回到了主調(diào)函數(shù)圖5.6程序執(zhí)行到最后5-2編程,輸入兩個(gè)正整數(shù)m和n,計(jì)算(m+n)!/(m!+n!)o要求定義和調(diào)用函數(shù)fact(n)計(jì)算n!,函數(shù)類型是double。5—3編程,輸入任意實(shí)數(shù)x和正整數(shù)n,計(jì)算x的n次幕。要求定義和調(diào)用函數(shù)power

7、(x,n)計(jì)算x的n次幕,其中x和n的類型分別是double和int,函數(shù)類型是double。輸入輸出示例:輸入x和n:2102的10次方是1024⑦如何求x1+x2+x3+—+xn5—4編程,輸入x,計(jì)算并輸出下列分段函數(shù)f(x)的值。要求定義和調(diào)用函數(shù)sign(x)實(shí)現(xiàn)該分段函數(shù)。1x>0f(x)=0x=0-1x<05-5編程,輸入2個(gè)整數(shù)begin和end,分別代表攝氏溫度的起止值,輸出該范圍內(nèi)攝氏溫度C和華氏溫度F的轉(zhuǎn)換表,攝氏溫度每次增加5°Co要求定義和調(diào)用函數(shù)ctof(celsius),將攝氏溫度C轉(zhuǎn)換為

8、華氏溫度F,計(jì)算公式:F=32+C*9/5o5-6編程,給定平面任意二點(diǎn)坐標(biāo)(x1,y1)W(x2,y2),求這兩點(diǎn)之間的距離(保留2位小數(shù))。要求定義和調(diào)用函數(shù)dist(x1,x2,y1,y2)計(jì)算兩點(diǎn)間的距離。輸入輸出示例:input(x1,y1),(x2,y2):1010200100Distance=210.24提示:模仿5

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無此問題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。