- 1、本文档共53页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
循环语句的选择 if(循环次数已知) 使用for语句 else /* 循环次数未知 */ if (循环条件在进入循环时明确) 使用while语句 else /* 循环条件需要在循环体中明确 */ 使用do-while语句 第二十八页,编辑于星期三:点 五十八分。 §5.4 用于循环中的break和continue语句 一、break语句 break语句的作用是从一种控制结构中跳出来 。 break语句可用于循环结构,其作用是从本层循环结构中跳出,可以提前结束执行循环语句体,执行循环结构外的下一条语句。 break语句的一般形式为: break; break语句在循环语句体中的位置应根据程序的需要而定,一般是用在循环体内某一个if条件分支的语句中,用来表示在循环过程中当某一个条件成立时提前结束循环。 第二十九页,编辑于星期三:点 五十八分。 程序解析-判断素数 算法:除了1和m,不能被其它数整除。 设 i 取值 [2, m-1] 如果m不能被该区间上的任何一个数整除,即对每个i,m%i 都不为0,则m是素数 只要找到一个i,使m%i为0,则m肯定不是素数 m %2 %3 %4 %5 %(m-1) 不是素数 || ==0 ==0 是素数 !=0 !=0 m不可能被大于 m/2 的数整除 i 取值 [2, m-1] 、 [2, m/2] 、 [2, ] for(i = 2; i = m/2; i++) if(m % i == 0) break; if(i m/2) printf(yes\n) else printf(no\n”); 第三十页,编辑于星期三:点 五十八分。 int main(void) { int i, m; printf(“Enter a number: ); scanf (%d, m); for (i = 2; i = m/2; i++) if (m % i == 0) break; if (i m/2 ) printf(%d is a prime number! \n, m); else printf(No!\n); } 源程序-判断素数 Enter a number: 9 No Enter a number: 11 11 is a prime number! 循环条件? 循环的结束条件? 第三十一页,编辑于星期三:点 五十八分。 break 语句 while(exp){ 语句1 if (expb) break; 语句2 } 真 假 exp 语句1 假 expb 语 句2 循环体 真 for (i = 2; i = m/2; i++) if (m % i == 0) break; if (i m/2 ) printf(Yes); else printf(No!\n); 当循环有多个出口时: 表示循环条件 区分结束条件 for(i = 2; i = m/2; i++) if(m%i == 0){ printf(No!\n); break; } printf(Yes); 第三十二页,编辑于星期三:点 五十八分。 二、Continue语句 Continue语句只适用于循环结构,其一般形式为: 作用:提前结束本次循环,提前进行下一次循环。 【例5-10】编写程序,打印100-200中不能被3整除的数。 /*exam5_10.c 求不能被3整除的数*/ #include stdio.h main() { int n; for(n=100;n=200;n++) { if(n%3==0) continue; printf(%d\t,n); } } 第三十三页,编辑于星期三:点 五十八分。 算法流程图如图 : 要准确地使用break语句和continue语句,除非有必要,否则若可以不用则尽量不采用break语句和continue语句。 第三十四页,编辑于星期三:点 五十八分。 对于例5-10的问题,打印100-200中不能被3整除的数。不采用continue语句的算法流程图如图所示: 第三十五页,编辑于星期三:点 五十八分。 /*exam5q10.c 例5-10问题不用continue */ #include stdio.h
文档评论(0)