實(shí)驗(yàn)5循環(huán)控制.docx_第1頁
實(shí)驗(yàn)5循環(huán)控制.docx_第2頁
實(shí)驗(yàn)5循環(huán)控制.docx_第3頁
實(shí)驗(yàn)5循環(huán)控制.docx_第4頁
實(shí)驗(yàn)5循環(huán)控制.docx_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡(jiǎn)介

1、C語言程序設(shè)計(jì)實(shí)驗(yàn)報(bào)告-實(shí)驗(yàn)5循環(huán)控制(二)一 實(shí)驗(yàn)?zāi)康?(1)掌握用while語句,do.while語句和for語句實(shí)現(xiàn)多重循環(huán)的方法(2)掌握在程序設(shè)計(jì)中用循環(huán)的方法實(shí)現(xiàn)一些常用算法(如窮舉、迭代、遞推等) (3)進(jìn)一步學(xué)習(xí)調(diào)試程序的技巧 二.實(shí)驗(yàn)內(nèi)容和步驟1.填空題(1)給定以下程序c5-1.c的功能是打印一個(gè)如下的九九乘法表的一部分:1*1=12*1=2 2*2=43*1=3 3*2=6 3*3=94*1=4 4*2=8 4*3=12 4*4=16#includeint main() int i,j; for(i=1;i=4;i+) for(j=1;j=i;j+) printf(%3d

2、*%3d=%3d,i,j,i*j); printf(n);return 0;(2)下面程序c5-2.c的功能是輸出以下圖形:#includeint main() int i,j,k; for(i=0;i=3;i+) for(j=0;j=10-i;j+) printf( ); for(k=0;k=2*i;k+) printf(*); printf(n); return 0;(3)下面程序c5-3.c的功能是求出100300之間的素?cái)?shù)和,請(qǐng)把程序補(bǔ)充完整#include#includeint main() int i,j,flag,sum=0; for(i=100;i=300;i+) flag=0

3、; for(j=2;j=i-1;j+)if(i%j=0) flag=1;break;if(flag=0) sum+=i;printf(The sum is %dn,sum);return 0;反思與總結(jié):1.注意(2)題中的i,j,k的初值都為0,所以是3不是4,是2i不是2i+1.10決定了第一個(gè)*之前有11個(gè)空格;2.(3)題中flag的作用是個(gè)標(biāo)記變量2.改錯(cuò)題 (1)以下給定程序c5-4.c的功能是已知一元以下的硬幣有一角、二角、五角3種面值,列舉出將一元兌成硬幣的所有方法。#include#includeint main() float i,j,k; for(i=0;i=2;i+)f

4、or(j=0;j=5;j+)for(k=0;k=10;k+) if(i*0.5+j*0.2+k*0.1=1.0) printf(%.0f,%.0f,%.0fn,i,j,k);return 0;(2)給定以下程序c5-5.c的功能是輸出11000之間的所有完數(shù),并輸出每個(gè)完數(shù)的所有因子。所謂完數(shù),就是指一個(gè)正數(shù),它的各因數(shù)之和等于其自身。#includeint main() int i,j,t; for(i=1;i=1000;i+) t=0; for(j=1;ji;j+) if(i%j=0) t+=j; if(t=i) printf(n%d is a full numbern,i); print

5、f(factors of %d are:t,i); for(j=1;ji;j+)if(i%j=0) printf(%d,j); printf(n);反思與總結(jié):在本題中for(i=1;i=1000;i+)用了兩次,但作用不一樣,注意體會(huì)。3程序設(shè)計(jì)題(1)根據(jù)公式sum=1+1/2!+1/3!+1/n!,計(jì)算sum的值(前20項(xiàng))。#includeint main() int i,j,t; float sum;for(i=1,sum=0;i=20;i+) t=1; for(j=1;j=i;j+)t=t*j; sum=sum+1.0/t;printf(sum=%fn,sum); return 0

6、;反思與總結(jié):注意t=1的位置,不能將其放在循環(huán)之前。(2)用多重循環(huán)變成實(shí)現(xiàn)打印出所有的“水仙花數(shù)”的功能,所謂水仙花數(shù)是指一個(gè)3位數(shù),其各位數(shù)字的立方和等于該數(shù)本身。#includeint main() int a,b,c; for(a=1;a=9;a+)for(b=0;b=9;b+)for(c=0;c=9;c+)if(100*a+10*b+c=a*a*a+b*b*b+c*c*c)printf(%d%d%d是一個(gè)水仙花數(shù)n,a,b,c);return 0;反思與總結(jié):C語言中沒有乘方符號(hào)。(3)輸入一個(gè)正整數(shù),將其逆序輸出。#includeint main() int t,m; scanf

7、(%d,&m);do t=m%10; printf(%d,t);m=m/10;while(m!=0);printf(n);return 0; 反思與總結(jié):就因?yàn)槁┝?,出現(xiàn)了已停止工作的問題?。?)編程打印數(shù)列2/1,3/2,5/3,8/5,13/8,21/13的前20項(xiàng)之和。#includeint main() int i=1; float m=2,n=1,sum=0,term,t; while(i=20) term=m/n; sum=sum+term; t=m; m=m+n; n=t; i=i+1;printf(sum=%fn,sum); return 0; 反思與總結(jié):注意定義的變量類型!(5)已知在區(qū)間0,3上,函數(shù)方f(x)=x3-x2-1有一個(gè)實(shí)根,試用二分法求函數(shù)f(x)的根。#include#includeint main() float low=1,high=3,mid,flow,fhigh,fmid;while(fabs(high-low)=1e-6) mid=(low+high)/2; flow=low*low*low-low*low-1; fmid=mid*mid*mid-mid*mid-1; i

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論