C语言第4章.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
#include math.h main( ) { int i=0,a=0,end=0,n=0; } end=sqrt(a); for ( i=2; i=end; i++ ) if ( a%i==0 ) break; if ( iend ) { printf(%4d,a); n++; if ( n%15==0 ) printf(\n); } for ( a=10; a=99; a++ ) { } 能改成for ( a=11; a=99; a=a+2 ) ? 判断a是否素数 a在10~99时 本例是在范围内逐一变化a的值,再一一去试 使用逐个去试的方法——穷举法或枚举法 讨论题4.13 如何计算100以内的所有素数之和? do-while先执行一次循环体,后判断表达式 循环体至少被执行一次 while先判断表达式,后执行循环体 循环体有可能一次也不被执行 三种循环可以互相转换 根据不同情况,选择具体循环 说明 如果为大写字母,则先转换为小写字母 将a转换为c b转换为d ……… x转换为z y转换为a z转换为b 其它字符不变 【例4.13】从键盘输入的一串字符(用#结束输入)按如下规则进行转换: a b c d … x y z 编程点拨 if ( ch=A ch=Z ) ch=ch+32; y和z通过ch=ch+2; 后 chz if ( chz) ch=ch-26; 大写转小写 if ( ch=a ch=z ) ch=ch+2; 小写转其后第二个字母 #include stdio.h main( ) { char ch=\0; printf(Input data:\n); do { ch=getchar( ); if ( ch=A ch=Z ) ch=ch+32; if ( ch=a ch=z ) { ch=ch+2; if ( chz) ch=ch-26; } putchar( ch ); } while ( ch!=#); } Input data: UfYrq 2 yLb 3?#? whats 2 and 3?# 不希望输出 用while解决 #include stdio.h main( ) { char ch=\0; printf(Input data:\n); ch=getchar( ); while ( ch != # ) { if ( ch=A ch=Z ) ch=ch+32; if ( ch=a ch=z ) { ch=ch+2; if ( chz) ch=ch-26; } putchar( ch ); ch=getchar( ); } } 不输出“#” 返回 4.4 break语句和continue语句 4.4.1 循环体中使用break语句 4.4.2 循环体中使用continue语句 P103 4.4.1 循环体中使用break语句 结构化程序设计只有一个入口、一个出口 顺序、分支、循环结构满足其要求 为提高执行效率,常要提前终止循环 常用break语句实现提前终止循环 P103 【例4.14】break语句示例 #include stdio.h main( ) { int i=0,sum=0; for ( i=1; i=10; i++ ) { if ( i%3 == 0 ) break; sum=sum+i; } printf(i=%d,sum=%d\n,i,sum); } 运行结果: i=3,sum=3 break; 关键字 1和2的和 i≤10 说明 提前退出循环 执行过程 i=1 i=i+1 i≤10 假 真 sum=sum+i i%3==0 真 假 循环体 第1个出口 第2个出口 输出i

文档评论(0)

考试教学资料 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档