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

[工学]chap5-6-选择结构、循环结构.ppt

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

while语句-实例 #include stdio.h main ( ) { int i=1, j; /* i:行计数器 j:列计数器 */ while ( i = 9 ) /* 控制打印表头 */ printf ( %4d, i++ ); printf (\n------------------------------------\n); i=1; while ( i= 9 ) { j = 1; /* 列计数器置1 */ while ( j = i ) /* 嵌套的二重循环。输出第i行 */ { printf (%4d, i*j ); j ++; /* 列计数器+1 */ } printf (\n); /* 一行输出结束后,输出\n */ i ++; /* 行计数器+1 */ } } 外层循环体每执行1次,内层循环要完成由内循环条件所决定的次数 while语句使用注意 1.while (0) { .... } 由于循环的条件表达式恒等于0,循环体永远也不会执行,是编程者的错误。 2.while (1) { .... } 由于循环的条件表达式恒等于 1,所以不可能通过循环控制条件来结束循环体的执行,称为“死循环”。 3.为了保证循环正常运行,应该特别注意: 循环控制条件 控制条件的初始状态(初始值) 循环体内部对控制条件的影响 §6.3 用do_while语句设计循环结构 do_While可用来实现“直到型”循环结构 语句形式: do 语句组 while (表达式) ; 条件 N Y 循环体 功能:先执行循环体,再判断表达式的值,若为非零,重复执行循环体语句,再判断…….直到表达式的值为零,退出循环体。 循环体语句先执行, 后判断, 循环体至少执行一次; 条件表达式后有分号。 §6.3 用do_while语句设计循环结构 main() {int s=0,x; scanf(%d,x); while (x=10) {s=s+x; x++;} printf(s=%d\n,s); } main() {int s=0,x; scanf(%d,x); do {s=s+x; x++;} while(x=10); printf(s=%d\n,s); } 输入:12 输出: s=12 循环至少 执行一次 循环没有 被执行 输入:12 输出: s=0 while 与do while的比较 §6.4 用for语句设计循环结构 for语句用来实现“当型”循环结构,且使用灵活,功能强。 语句形式: for (表达式1;表达式2;表达式3) 语句组 循环体语句 循环变量初值 循环条件 循环变量步长 表达式2 循环体 计算表达式1 计算表达式3 Y N 执行过程: 1.计算表达式1的值; 2.判断表达式2的条件,为0时跳出循环,非0执行循环; 3.计算表达式3(增量); 4.自动转到第二步…...继续执行。 main( ) { int i, s=0; for(i=1; i=100; i++) s=s+i ; printf(“sum=%d\n”,s); } 循环变量初值 循环条件 循环变量步长 循环体 i=100 s=s+i i=1 i++ Y N 循环体中,如有多条语句要用{ }括起来。 for 语句-实例 1 例1:求1—100的累加和 for语句中的三个表达式(表达式1,表达式2和表达式3)中的任意一个都可省略,但是分号不能省略。 for (n=0;;n++) 缺表达式2, 造成死循环,不可使用! (除非循环体中有使循环退出的条件) for (n=0;n100;) 缺表达式3, n增量应在循环体内进行 for (; ;) 三个表达式都缺省, 死循环(同2) for (;n100;) 缺表达式1和表达式3 不要用 for语句的其它几种变化形式 for (;n100;n++) 缺表达式1, n 应在循环之前赋初值 分号始终不能缺! 检测给定整数k是否素数 #include “math.h” main( ) { int k, i, m, l =1; scanf(“%d”, k); m=sqrt(k)

文档评论(0)

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

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

版权声明书
用户编号:5024214302000003

1亿VIP精品文档

相关文档