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

第3章-循环结构讲解.pptx

  1. 1、本文档共56页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第一讲 循环结构 思考:如何编程来计算1 + 2 + 3 + … + 100? 程序如下:int s = 0; s = s + 1; s = s + 2; s = s + 3; …… s = s + 100; printf (“s = %d”, s); 有规律! 有没有更好的方法来计算呢? 循环结构 2 先判断再执行 先执行再判断 三种基本的循环语句 while(表达式) 语句 do 语句 while(表达式) for(表达式1;表达式2;表达式3) 语句 3 1. while语句 一般形式: while (表达式) 循环体语句; 执行流程: 其中: while后面的括号( )不能省。 while后面的表达式可以是任意类型的表达式,但一般是条件表达式或逻辑表达式。 表达式的值是循环的控制条件。 语句部分称为循环体,当需要执行多条语句时,应使用复合语句。 特点:先判断表达式,再执行循环体 循环结构—— while语句 4 【例】 用while语句求1+2+3+…+100 #include stdio.h void main ( ) { int i = 1, sum = 0; while ( i = 100 ) { sum += i; i++; } printf (sum = %d\n, sum); } 循环初值 循环终值 循环条件 循环体 循环变量增值 运行结果: sum = 5050 sum += i++; 5 【例】显示1~10的平方 #include stdio.h void main ( ) { int i = 1; while ( i = 10 ) { printf (%d*%d=%d\n, i, i, i*i); i++; } } 运行结果: 1*1=1 2*2=4 3*3=9 4*4=16 5*5=25 6*6=36 7*7=49 8*8=64 9*9=81 10*10=100 6 如果while后的表达式的值一开始就为假,循环体将一次也不执行。 循环体中的语句可为任意类型的C语句。 遇到下列情况,退出while循环: 表达式为假(为0)。 循环体内遇到break、continue或goto语句 while语句注意事项: int a = 0, b = 0; while (a 0) b++; int num = 0; while ( 1 ) { if (getchar ( ) == \n) break; num++; } 循环结构—— while语句 7 (4) 在执行while语句之前,循环控制变量必须先初始化,否则执行的结果将是不可预知的。 (5) 要在while语句的某处(表达式或循环体内)改变循环控制变量,否则极易构成死循环。 (6) 允许while语句的循环体又是while语句,从而形成双重循环。 while语句注意事项: 例:计算10! #include stdio.h void main ( ) { int i; long s = 1; while (i = 1) s *= i--; printf (10! = %ld\n, s); } i = 1; while (i 100) sum += i; printf (sum = %d\n, sum); i = 1; while (i = 9) { j = 1; while (j = 9) { printf (%d * %d = %d\n, i, j, i * j); j++; } i++; } 循环结构—— while语句 8 【例】求两个正整数的最大公约数。 算法:辗转相除法(欧几里德算法)来求最大公约数 (1) 输入两个正整数m和n。 (2) 用m除以n,余数为r,如果r等于0,则n是最大公约数,运算结束,否则(3)。 (3) 把n赋给m,把r赋给n,转(2)。

文档评论(0)

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

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

1亿VIP精品文档

相关文档