- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
例:将上例(打印8行7列的星号矩形)用二重循环实现。 #include stdio.h main() { int i , k; for( i=0; i8; i++ ) { for( k=0; k7; k++ ) printf(*); printf(\n); } } 6.8 break 和continue语句 一、break 语句 一般形式: break ; 功能:结束当前的一层循环。 解释: break 语句一般用在循环体的条件语句 中,其作用是当某个条件成立时用break语 句退出循环,不再继续执行其余的几次循 环。 Break不能用于循环语句和 switch语 句之外的任何其他语句中。由于break语句 的转移方向是明确的,所以不需要语句标 号与之配合。使用break语句可以使循环语 句有多个出口,在一些场合下使编程更加 灵活、方便。 例:打印半径为1~10的圆的面积,如果面积超过100,则不再打印。 #includestdio.h #define PI 3.14159 main() { int r; float area; for(r=1; r=10; r++) { area=PI*r*r; if(area100.0) break; printf(area=%f\n,area); } printf(now, r=%d\n,r); } 注意:在嵌套循环中使用break语句,它只影响包含它的最内层循环,即程序仅跳出包围该break的那层循环。 例:编写程序,输出三角乘法表。 main( ) { int i, j; for( i=1; i= 9; i++) { for( j=1; j= 9; j++) { if( ji ) break; printf(“%3d”, i*j ); } printf(“\n”); } } 运行结果: 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 一般形式: continue ; 功能:结束循环体,进入下一个循环周期。 解释:continue语句,其作用是当某个条件 成立时用continue语句退出本次循 环,即跳过循环体中下面尚未执行的 语句,接着进行下一次是否执行循环 的判断。应注意的是, 本语句只结束 本层本次的循环,并不跳出循环。 二、continue语句 例:计算用户输入的所有正整数的和, 用户输入 0 时结束。 #include stdio.h main() { long data, sum; sum = 0; do { printf(“Please input : data=”); scanf(%ld, data); if( data 0 ) continue; sum = sum + data; } while( data != 0 ); } continue语句与break语句的区别是: continue只结束本次循环,而不是终止整个循环的执行。而break则是结束整个循环过程,不再判断执行循环的条件是否成立。 具体看书P115流程图与例子。 6.9 程序举例 例6.6 用π/4≈1-1/ 3+1/5-1/7+1/9… 求π近似的值。 直到最后一项的绝对值小于10-6为止。 #include math.h main() { int s; float n , t , sum, pi; t=1; sum=0 ; n=1 ; s=1; while(fabs(t)=.000001) { sum=sum+t; n=n+2; s= -s; t=s/n; } pi=sum*4; printf(pi=%f\n,pi); } 运行结
文档评论(0)