网站大量收购闲置独家精品文档,联系QQ:2885784924

C语言中 循环结构.ppt

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

#includestdio.h int main() { int i,j; for(i=1;i=9;i++) /*外循环控制输出行*/ { for(j=1;j=i;j++) /*输出该行的内容*/ printf(%2d*%d=%2d,j,i,i*j); printf(\n); /*每行结束后输出换行*/ } return 0; } 5.5 break语句和continue语句 5.5.1 break语句 break语句可以使流程跳出switch结构,它也可以用在while语句、for语句和do…while语句中。可使程序跳出本层循环结构,接着执行循环体下面的语句。 其一般形式如下: break; * 例子:int r; float area,pi=3.14159; for(r=1;r=10;r++) { area=pi*r*r; if(area100) break; printf(r=%d,area=%f\n,r,area); } 说明: (1)break语句只能用于while、for和do…while循环语句以及switch语句中,不能用于其他语句。 (2)如果break语句用在多重循环结构体中,使用break语句只能使程序退出break语句所在的最内层循环。 5.5.2 continue语句 continue语句的作用是 结束本次循环,即跳过循环体中下面尚未执行的语句,接着进行下一次是否执行循环体的判断。 其一般形式如下: continue; continue语句只能用于循环结构中。 int i,n,score; float sum=0,aver; printf(请输入学生的个数:); scanf(%d,n); for(i=1;i=n;i++){ printf(请输入学生的成绩:); scanf(%d,score); if(score0||score100) /*学生成绩输入有误*/ {printf(输入成绩有误,请重新输入!\n); i--; /*此次输入成绩不算,计数应减去1*/ continue;} sum=sum+score; } aver=sum/n; printf(%.2f\n,aver); * 【例5.10】输入若干学生的成绩,求平均值。 5.5 break语句和continue语句 continue语句的作用是结束本次循环,即跳过循环体中下面尚未执行的语句,接着进行下一次是否执行循环体的判断。其一般形式如下: continue; 注意:continue语句只能用于循环结构中。 对于while和do…while语句,continue语句使程序结束本次循环,跳转到循环条件的判断部分,根据条件判断是否进行下一次循环;对于for语句,continue语句使程序不再执行循环体中下面尚未执行的语句,直接跳转去执行“表达式3”,然后再对循环条件“表达式2进行判断”,根据条件判断是否进行下一次循环。 5.6 应用程序举例 * 【例5.12】从键盘输入两个正整数m和n,求它们的最大公约数和最小公倍数。 方法一:根据最大公约数的数学定义,使用for循环查找即能整除m又能整除n的最大的数就是m、n的最大公约数。 int m,n,k,max,x,y,z; printf(input m and n:\n); scanf(%d,m); scanf(%d,n); x=m; y=n; for (k=1;k=(mn?m:n);k++)/*循环变量k的最大值应是m和n中的较小数*/ if (m%k==0n%k==0) max=k; z=x*y/max; /*求最小公倍数*/ printf(m和n的最大公约数为:%d,\n最小公倍数为:%d\n,max,z); 方法二:辗转相除法。首先定义一个变量r,用来存储m除以n的余数。 Step1:将两个数中的大者放在m中,小者放在n中。 Step2:求m除以n的余数r,即r=m%n。 Step3:若r不等于0,转Step4;若r等于0,则此时的n就是最大公约数,转Step5 Step4:把n的值赋给m,把r的值赋给n,即mn,nr,然后转Step2。 Step5:跳出循环结构,执行循环结构的下一个语句。 int m,n,r,x,y,z,k; scanf(%d,m); scanf(%d,n); if(nm)

文档评论(0)

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

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

1亿VIP精品文档

相关文档