循环嵌套编程实例_第1页
循环嵌套编程实例_第2页
循环嵌套编程实例_第3页
循环嵌套编程实例_第4页
循环嵌套编程实例_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、一、循环结构的嵌套1、在一个循环体内,双完整的包含了另一个循环,称为循环嵌套,循环的嵌套可以是多层, 但每一层循环在逻辑上必须是完整的。2、内循环语句应该比外循环语句有规律的向右缩进2-4列。二、循环嵌套的实例(一)、素数问题1、分析方法:、素数的概念:除了 1和本身之外不能被任何数整除。X从2到x-1都不能被整除。、素数的判断,x从2到x/2都不能被整除。I x从2到x的平方根都不能被整除。2、例题:例1、判断x是否为素数。maiiiQint i,x;cksci();scanf(co&x);fbr(i=2;i=x)printf(co,yes);else pnntf(“No”);)例2、输出所

2、有三位素数。maiiiQint x,i,n=O;for(x= 100;x=999;x+)if(x%i=0)break;fdr(i=2;i=x)(pnntf(%d”,x);ii+;if(n% 1 O=O)pnntRn”);)例3、求大于m的k个素数maiiiQint i,x,m,k,n;scanf(%d%d”,&m,&k);n=O;for(x=m+1 ;n=x)pnntRx=%d”,x);n+; 例3:求100!)例4、求小于m的最大的k个素数累加前100个自然数的和。方法一:main。/Imt i,s;s=100;for(i=99;i=l;i-)s+=i;pnntRs=%dn”,s);)、斐波

3、那数列方法二:main。mt i,s;s=100;i=99:while(i=l)-;S+=1; pnntRs=%dn”,s);i方法三:mam()(int i,s;s=0;i=100;while(i=l)S;S+=1; pnntf(“s=%dn”,s); )例1:有一数列,前两项分别是1,1从第三项开始,每项都是前二项的和,求这个数列前40项。方法 1: 1113111()(int a=l,b=I,c,i;for(i=3;i=40;i+)c=a+b;a=b;b=c;ptintf(%ld,%ld,%ld,%ld,a,b,c,d” ,a,b,c,d) )方法二:main。(long fl=l,f2

4、=l;inti;fbr(i=3;iv=20;i+)if(i%5=0)pnntf(n”);fl=fl+f2;f2=f2+fl;)例2:有一数列,前三项分别是0, 1, 2,从第四项开始,每项都是前三项和,求这个数列的前40项(扩展的斐波那数列)方法 1: main。(long a=0,b=l,c=2di; fbi(i=4;i=40;i+) d=a+b+c;a=b;b=c;c=d;pnntf(ld”,d);方法二:main。(long fl=O,f2=l;f3=2inti;fbr(i=4;iv=20;i+)if(i%5=0)pnntf(n”);fl=fl+f2+f3;f2=f2+f3+fl;f3=

5、f3+fl+f2;pnntf(“ld %ld %ld”,fl,f2,f3);)方法一:mamQ(mt i;double s;foi(i= l,s=l ;i= 100;i+) s=s*i;pruitf(cs=%lfdi,s);例 4:编程 1+1/2+1/6+1/12+l/n(n+l)方法一:mamQdouble s;mt n,k;scaiiR“d”,&n);s=L0;for(k=l;k=l;i) s*=i;pnntf(s=%lfu”,s);)方法二:main()(iiit ii,k;double s,d;scanf(“d”,&n);fbr(s=O.O,d= L0,k=0;kv=n;k+) s=

6、s+d ;d=L0/(k*(k+1); pnntf(“lfs”,s);main()(int s,t,i;fbr(s=O,i= 1 ,t= 1 ;i v= 101 ;i+=2)s=s+t*i;t=t;piintf(s=%dii”,s);(四)、图形问题例1:输出三行三列的正直角三角形。(公式:列数=当前行数)mamQint ij;fbr(i=l;i=3;i-H-)治4=侦=侦+)pnntf(“*”);pnntf(“n”);)例2:输出10行10列的倒直角三角形。(公式:列数=总行数+1 .当前行数) mamQint ij;fbr(i=l;i=10:i+)pnntf(“*”);pnntf而 5;)

7、例3:输出4行7列的正等腰三角形。(公式:列数=当前行数*2.1)maiiiQfint ij;fbr(i=l;i=4;i-H-)fbr(j=lj=5-ij+)print 砂”);fbr(j=l J=2*i-1 J+)pnntf(“*”);pnntf(W);)例4:输出倒着的正等腰三角形。(公式:列数=总行数*2- (2*当前行数-1) maiiiQ sint i,j;fbr(i=l;i=4;i-H-)fbr(j=lJ=ij+)printR勺;for(j=lJ=8-(2*M);j+)pnntf(“*”);pnntf(W);)例5:菱形maiiiQfint ij;fbr(i=l;i=4;i+)fb

8、r(j=lJ=5-i;j+)pnnt(“ ”);fbr(j=l J=2*i-1 J+)pnntf(“*”);pnntf(W);fbr(i=l;iv=3;i+)如(J=ljv=i+lj+)pnntf();fbr(i=l J=6-(2*i-l );j+)pnntf(“*”);pnntf(W);)(五)、用迭代法求某正数a的平方根xl,x0=a/2方法二:用一个for循环控制 main() (int ij,t;fbi(i=l;i=7;i-H-)if(i=4)t=i;elset=8-i;for(j=lj=8-tj+) piintR*”); pnntO;)己知求平方根的迭代公式为:xl=1.0/2* (xO+a/xO)当xO-xl的绝对值10时,xl为最终结果。include math.h” maiiiQfloat a;double xO,xl;printfmput a:);scanf(“ 仁&a);if(a0)pruntf(4 1 e-5);printf(tclf xl);)、从输入的若干个大于零的正整数中选出最大值,用1结束输入maiiiQmt x,max;doscanf(“d”,&x)wliile(xO&x!= 1)、输入6名学生5门课程的成绩,分别统计每个学生5门课程的平均成绩。define N

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论