- 1、本文档共46页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[理学]C语言循环结构二
循环语句 while语句 do-while语句 for语句 continue语句:跳过循环体下面未执行的语句,接着执行循环下一次迭代。如: while( ) { … if ( ) continue; … } 练习4:写结果 求:Fibonacci数列30个数。该数列有如下特点:第1,2两个数为1, 1。从第三个数开始,该数是其前面两个数之和。即: F1=1 (n=1) F2=1 (n=2) Fn=Fn-1+Fn-2 (n=3) 分析:设当前项为f,第一项为f1,第二项为f2。首先根据f1和f2推出f,再将f2作为f1,f作为f2,再推出f,如此一直递推下去: 编程 练习:写结果 练习:写结果 练习:写结果 练习:写结果 例: 打印如图所示的乘法表。 1 2 4 3 6 9 4 8 12 16 5 10 15 20 25 6 12 18 24 30 36 7 14 21 28 35 42 49 8 16 24 32 40 48 56 64 9 18 27 36 45 54 63 72 81 for() {… while() {…} …} Do { … for() {…} … }while(); while() { … for() {…} … } for() { … for() {…}} 三种循环可以互相嵌套,例如以下四种均为合法的嵌套循环结构 执行规律:一般外循环变量每改变一 个值,内循环要完整的循环 一遍。 #include stdio.h main() { int i,j,m=1; for(i=1;i3;i++) { for(j=3;j0;j--) { if(i*j3) break; m*=i*j; } } printf(m=%d\n,m); } m=6 #include stdio.h main() { int m,n; scanf(%d%d,m,n); while(m!=n) { while(mn)m=m-n; while(mn)n=n-m; } printf(%d\n,m); } 程序运行后,当输入 14 63回车时,输出结果是_______. 7 #include stdio.h void main() { int i,j,a=0; for(i=0;i2;i++) { for(j=0;j4;j++) {if(j%2) break; a++; } a++; } printf(%d\n,a); } 4 #include stdio.h void main() { int i,j,x=0; for(i=0;i2;i++) {x++; for(j=0;j=3;j++) {if(j%2) continue; x++; } x++; } printf(x=%d\n,x); } x=8 算法思路: 可以用外循环变量i控制行,内循环变量j控制列,i的变化范围为1到9,而j的变化范围由i决定,即第i行时j的变化为从1到i, i每取一个值,j都会从1变到i。行列确定后每个数即为i*j。 #include stdio.h void main() { int i,j; for( i = 1;i = 9;i++ ) { for( j = 1;j = i;j++) { printf(%3d , i * j);} printf(\n); } } 程序: 算法和程序参考书 算法思路:判断m是否为素数,让m被2到 (k)除,如果m能被2~k之间任何一个整数整除,则提前结束循环,此时i必然小于或等于k;如果
文档评论(0)