![C語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告2.4_第1頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-6/6/c504aba7-fa07-413d-ab12-b022fe09e814/c504aba7-fa07-413d-ab12-b022fe09e8141.gif)
![C語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告2.4_第2頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-6/6/c504aba7-fa07-413d-ab12-b022fe09e814/c504aba7-fa07-413d-ab12-b022fe09e8142.gif)
![C語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告2.4_第3頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-6/6/c504aba7-fa07-413d-ab12-b022fe09e814/c504aba7-fa07-413d-ab12-b022fe09e8143.gif)
![C語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告2.4_第4頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-6/6/c504aba7-fa07-413d-ab12-b022fe09e814/c504aba7-fa07-413d-ab12-b022fe09e8144.gif)
![C語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告2.4_第5頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-6/6/c504aba7-fa07-413d-ab12-b022fe09e814/c504aba7-fa07-413d-ab12-b022fe09e8145.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、C語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告專業(yè) 班級(jí)日期 11月26日成績(jī)實(shí)驗(yàn)組別 第 2(2.4)次實(shí)驗(yàn) 指導(dǎo)教師 李開學(xué)生姓名 學(xué)號(hào)同組人姓名實(shí)驗(yàn)名稱流程控制實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康?1) 熟悉和掌握函數(shù)的定義、聲明;函數(shù)調(diào)用與參數(shù)傳遞方法;以及函數(shù)返回值類型 的定義和返回值使用。(2) 熟悉和掌握不同存儲(chǔ)類型變量的使用。(3) 熟悉多文件編譯技術(shù)。二、實(shí)驗(yàn)任務(wù)4.2實(shí)驗(yàn)內(nèi)容及要求1 源程序改錯(cuò)下面是計(jì)算s=1!+2!+3!+n!的源程序,在這個(gè)源程序中存在若干語(yǔ)法和邏輯錯(cuò)誤。 要求在計(jì)算機(jī)上對(duì)這個(gè)例子程序進(jìn)行調(diào)試修改,使之能夠正確完成指定任務(wù)。#in cludevoid mai n(void)int k;for(k
2、=1;k6;k+)printf(k=%dtthe sum is %ldn,k,sum_fac(k); -long sum_fac(i nt n) -long s=0;int i;long fac;for(i=1;i=n ;i+)fac*=i;s+=fac;return s;2 源程序修改替換(1)修改第1題中sum_fac函數(shù),使其計(jì)算量最小。(2)修改第1題中sum_fac函數(shù),計(jì)算s二1 丄 丄亠 亠2!3!n!。3 跟蹤調(diào)試計(jì)算fabonacci數(shù)列前n項(xiàng)和的程序如下:其中,Io ng sum=0,*p=∑聲明p為長(zhǎng)整型指針并用 &su m取出sum的地址對(duì)p初始化。*p 表示引
3、用p所指的變量(*p即sum)。void mai n(void)int i,k;long sum=0,*p=& sum;sea nf(%d,&k);for(i=1;i=4 is the sum of two primes.10=3+712=5+720=3+175. 選做題假設(shè)一個(gè)C程序由file1.c 、file2.c 兩個(gè)源文件和一個(gè) file.h 頭文件組成,file1.c file2.c 和file.h 的內(nèi)容分別如下,試編輯該多文件C程序,并編譯和鏈接。然后運(yùn)行生成的可執(zhí)行文件。源文件file1.c 的內(nèi)容為:#i nclude file.hint x,y; /*外部變量的定義性說(shuō)明
4、*/char ch; /*外部變量的定義性說(shuō)明 */void mai n(void)x=10;y=20;ch=getchar();prin tf(in file1 x=%d,y=%d,ch is %cn,x,y,ch);fun c1();源文件file2.c 的內(nèi)容為:#in clude file.hvoid fun cl(void) x+;y+; ch+;printf(in file2 x=%d,y=%d,ch is %cn,x,y,ch);的內(nèi)容為:頭文件file.h外部變量的引用性說(shuō)明*/外部變量的引用性說(shuō)明*/函數(shù)原型*/#i nclude extern int x,y; /* ext
5、er n char ch; /* void fun c1(void); /* fund4.3多源文件C程序的建立(結(jié)合第5題)三、實(shí)驗(yàn)步驟及結(jié)果(要求給出源程序和程序運(yùn)行結(jié)果。另外,根據(jù)實(shí)驗(yàn)內(nèi)容,記錄編輯、編譯、鏈接、調(diào)試程 序的操作過(guò)程和實(shí)驗(yàn)現(xiàn)象)(2.4內(nèi)容)1 源程序改錯(cuò)下面是計(jì)算s=1!+2!+3!+n!的源程序,在這個(gè)源程序中存在若干語(yǔ)法和邏輯錯(cuò)誤。 要求在計(jì)算機(jī)上對(duì)這個(gè)例子程序進(jìn)行調(diào)試修改,使之能夠正確完成指定任務(wù)。#in cludevoid mai n(void)int k;for(k=1;k6;k+)prin tf(k=%dtthe sum is %ldn,k,sum_fac(
6、k);long sum_fac(i nt n)long s=0;int i;long fac;for(i=1;i=n ;i+)fac*=i;s+=fac;return s;(修改后)#in cludelong sum_fac(i nt n);int main( void)int k;for(k=1;k6;k+)printf(k=%dtthe sum is %ldn,k,sum_fac(k); - long sum_fac(i nt n)long s=0;int i;long fac=1;for(i=1;i=n ;i+)fac*=i;s+=fac; return s;2 源程序修改替換(1)修改
7、第1題中sum_fac函數(shù),使其計(jì)算量最小。#i ncludelong sum_fac(i nt n);int main (void)int k;for(k=1;k6;k+)printf(k=%dtthe sum is %ldn,k,sum_fac(k); return 0;long sum_fac(i nt n) _staticlongs=0;staticlongfac=1;fac*=n;s+=fac;return s;1 1 1 s = 1+ + 一 + + (2)修改第1題中sum_fac函數(shù),計(jì)算2!3!n!。#in cludefloat sum_fac(i nt n);int mai
8、n( void)int k;for(k=1;k6;k+)prin tf(k=%dtthe sum is %fn ,k,sum_fac(k); float sum_fac(i nt n)float s=0;int i;long fac=1;for(i=1;i=n ;i+)fac*=i;s+=1.0/fac;return s;3 跟蹤調(diào)試計(jì)算fabonacci數(shù)列前n項(xiàng)和的程序如下:其中,Io ng sum=0,*p=∑聲明p為長(zhǎng)整型指針并用 &su m取出sum的地址對(duì)p初始化。*p 表示引用p所指的變量(*p即sum)。void mai n(void)int i,k;long sum=
9、0,*p=& sum;sca nf(%d,&k);for(i=1;i=k;i+)sum+=fab on acci(i);prin tf(i=%dtthe sum is %ldn,i,*p);long fabon acci (int n)if(n=1 | n=2) return 1;elseretur n fabon acc i(n-1)+fab on acc i(n-2);單步執(zhí)行程序,觀察p,i,sum, n 值。(1)剛執(zhí)行完scanf(%d,&k);語(yǔ)句,p,i值是多少?i=29p=5sum=0(2) 從fabonacci函數(shù)返回后光條停留在哪個(gè)語(yǔ)句上? printf(i=%dtthe
10、sum is %ldn,i,*p);(3) 進(jìn)入fabonacci函數(shù),watch窗口顯示的是什么?:m-和7 w l -J 心(4)當(dāng)i=3,從調(diào)用fabonacci函數(shù)到返回,n值如何變化?n=3 到 n=2 到 n=1 到 n=34.程序設(shè)計(jì)(1)編程讓用戶輸入兩個(gè)整數(shù),計(jì)算兩個(gè)數(shù)的最大公約數(shù)并且輸出之(要求用遞歸函數(shù)實(shí) 現(xiàn)求最大公約數(shù))。同時(shí)以單步方式執(zhí)行該程序,觀察遞歸過(guò)程。#in clude#in cludeint Greatest_Com mon _divisor(i nt m,i nt n);int main( void)int m,n;prin tf(i nput two n
11、u mber n);scan f(%d%d,&m,&n);Greatest_Com mon _divisor(m, n); return 0;int Greatest_Com mon _divisor(i nt m,i nt n)int i;i=abs(m-n);if(i=m)|(i=n)prin tf(%d,i);elseif(mn)Greatest_Com mon _divisor( n,i); - -elseGreatest_Com mon _divisor(m,i);D:CqwertyuibinDebugqwertyulexeinput twq nunber49 5Eocess ret
12、urned 0 =4 is the sum of two primes. 10=3+7 12=5+720=3+17#in cludeint isprime(i nt n)int j,x;for(j=2;j=4 is the sum of two primes n); for ( ;n = m;n+=2) for(i=2;i=4 is the sum of tuo primesL0=3+7L2=5*7L4-3+11L$-3*13L8=5*13i0=3*17Process returned 0 xecution tine : 2.486 s ?i*frss 乜ny Key tn continue,
13、5 選做題假設(shè)一個(gè)C程序由filel.c 、file2.c 兩個(gè)源文件和一個(gè) file.h 頭文件組成,filel.c file2.c 和file.h 的內(nèi)容分別如下,試編輯該多文件C程序,并編譯和鏈接。然后運(yùn)行生成的可執(zhí)行文件。源文件filel.c 的內(nèi)容為:#i nclude file.hint x,y; /*外部變量的定義性說(shuō)明 */char ch; /*外部變量的定義性說(shuō)明 */void mai n(void)x=10;y=20;ch=getchar();printf(in file1 x=%d,y=%d,ch is %cn,x,y,ch);fun c1();源文件file2.c 的內(nèi)
14、容為:#i nclude file.hvoid fun c1(void)x+;y+;ch+;prin tf(in file2 x=%d,y=%d,ch is %cn,x,y,ch);頭文件file.h 的內(nèi)容為:#i nclude extern int x,y; /*外部變量的引用性說(shuō)明 */extern char ch; /*外部變量的引用性說(shuō)明 */void fun cl(void); /* funci函數(shù)原型*/#in elude */*/extern int x,y; /*exter n char ch; /* void fun c1(void); /* fund夕卜部變量的引用性說(shuō)明 夕卜部變量的引用性說(shuō)明 函數(shù)原型*/int x,y; /*外部變量的定義性說(shuō)明*/char ch; /*外部變量的定義性說(shuō)明*/void mai n(void)x=10;y=20;ch=getchar();prin tf(in filel x=%d,y=%d,ch is %cn,x,y,ch); fun c1();void fun c1(void)x+;y+;ch+;prin tf(in file2 x=%d,y=%d,ch is %cn,x,y,ch); Took Toeli+ 胃Ccuh-fi lodes 弓 曲旳 Mip:t
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 湘教版地理七年級(jí)上冊(cè)《第三節(jié) 影響氣候的主要因素》聽課評(píng)課記錄2
- 蘇科版數(shù)學(xué)七年級(jí)上冊(cè)《有理數(shù)的減法法則》聽評(píng)課記錄2
- 現(xiàn)場(chǎng)管理承包協(xié)議書
- 生活指南版權(quán)使用合同(2篇)
- 魯人版道德與法治九年級(jí)上冊(cè)2.2 做大蛋糕 分好蛋糕 聽課評(píng)課記錄
- 聽評(píng)課一年級(jí)記錄怎么寫
- 吉林省八年級(jí)數(shù)學(xué)下冊(cè)17函數(shù)及其圖象17.4反比例函數(shù)17.4.1反比例函數(shù)聽評(píng)課記錄新版華東師大版
- 蘇科版九年級(jí)數(shù)學(xué)聽評(píng)課記錄:第52講 用待定系數(shù)法求二次函數(shù)的解析式
- 五年級(jí)數(shù)學(xué)上冊(cè)聽評(píng)課記錄
- 滬科版數(shù)學(xué)七年級(jí)下冊(cè)10.2《平行線的判定》聽評(píng)課記錄3
- 小學(xué)六年級(jí)數(shù)學(xué)上冊(cè)《簡(jiǎn)便計(jì)算》練習(xí)題(310題-附答案)
- 2024年河南省《輔警招聘考試必刷500題》考試題庫(kù)及答案【全優(yōu)】
- -情景交際-中考英語(yǔ)復(fù)習(xí)考點(diǎn)
- 安全隱患報(bào)告和舉報(bào)獎(jiǎng)勵(lì)制度
- 地理標(biāo)志培訓(xùn)課件
- 2023行政主管年終工作報(bào)告五篇
- 2024年中國(guó)養(yǎng)老產(chǎn)業(yè)商學(xué)研究報(bào)告-銀發(fā)經(jīng)濟(jì)專題
- 公園衛(wèi)生保潔考核表
- 培訓(xùn)如何上好一堂課
- 高教版2023年中職教科書《語(yǔ)文》(基礎(chǔ)模塊)下冊(cè)教案全冊(cè)
- 2024醫(yī)療銷售年度計(jì)劃
評(píng)論
0/150
提交評(píng)論