C程序 循环结构.ppt

  1. 1、本文档共50页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C程序 循环结构.ppt

1.书写while循环语句 的三个步骤 ①写出正确的循环条件 ②循环体内应有使循环趋于结束的语句 当结束条件为和大于2000时,如何表示? while(sum=2000){……} 求输入的数字之和,当输入-1作为结束条件时,如何表示? 表达式1和表达式3可以是一个简单的表达式,也可以是逗号表达式,即包含一个以上的简单表达式,中间用逗号间隔。如: for(sum=0,i=1;i=100;i++) sum=sum+i; 或 for(i=0,j=100;i=j;i++,j--) k+=i*j; for(i=1;i=100;i++){sum=sum+i; i++;} 相当于 for(i=1;i=100;i=i+2) sum=sum+i; 程序结果分析 #include stdio.h void main() { int y=9; for(;y0;y--) if(y%3==0) printf(%d ,--y); } 1.循环变量: x,i, t,s 2.变化规律: t=-t*x*x/(2*i*(2*i+1)); 3.循环条件: fabs(t)=1e-7 * ** *** **** ***** ****** @@@@* @@@*** @@***** @******* ********* #include stdio.h void main() { int i,j,k; for( i=1;i=5;i++) { for(j=1;j=5-i;j++) printf( ); for(k=1;k=2*i-1;k++) printf(*); printf(\n);} for( i=1;i=4;i++) { for(j=1;j=i;j++) printf( ); for(k=1;k=9-2*i;k++) printf(*); printf(\n); } } 多重循环--九九乘法表(1) for(i=1;i=1;i++) printf(1*%d=%2d ,i,1*i); printf( \n); for(i=1;i=2;i++) printf(“2*%d=%2d ,i,2*i); printf( \n); for(i=1;i=n;i++) printf(“n*%d=%2d ,i,n*i); printf( \n); for(n=1;n=9;n++) { for(i=1;i=n;i++) printf(“%d *%d=%2d ,n,i,n*i); printf( \n); } 举一反三 for(i=1;i=9;i++) printf(1*%d=%2d ,i,1*i); printf( \n); for(i=2;i=9;i++) printf(“2*%d=%2d ,i,2*i); printf( \n); for(i=n;i=9;i++) printf(“n*%d=%2d ,i,n*i); printf( \n); for(n=1;n=9;n++) { for(i=n;i=9;i++) printf(“n*%d=%2d ,n,i,n*i); printf( \n); } 上机题:打印如下图形: 练习 #include stdio.h void main() { int i=0,s=0; for (;;) { if(i==3||i==5) continue; if (i==6) break; i++; s+=i; } printf(s=%d,s); } 输入检测问题 求输入的成绩之和,以输入0作为结束条件(对输入的数据要进行检测) 上机题 求输入的成绩之和,最高成绩,最低成绩,平均成绩,以输入0作为结束条件(对输入的数据要进行检测) 求sum=a+aa+aaa+‥‥+aaa… … a的值(a和n由用户从键盘上给出) 例如:a=4,n=5 sum=4+44+444+4444+44444=49380 444=4*100+4*101+4*102 x=0; for(j=0;j3;j++) x=x+a*pow(10,j); 改进 sum=4+44+444+4444+44444+ … … 每一项不必重新计算,它是前一项的10倍加a x=0; for(i=1;i=n;i++) { x=x*10+a; sum=sum+x; } 上机题:汽车里程表上的读数是95859,7小时之后里程表的读数是一个对称数(最大是5位数),问汽车的速度(是一个整数)。 解题思路: 判断95859 到99999之间所有数中哪个是对称数 如果是,它与95859的差能否被7整除 void main() { int s,a,b,c,d,e,f; //s为读数

文档评论(0)

jackzjh + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档