C程序设计配套PPT及课后习题答案C6-循环结构程序设计.ppt

C程序设计配套PPT及课后习题答案C6-循环结构程序设计.ppt

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

* 第6章 循环结构程序设计 循环语句出现的需要??? 例如:求1~100的累计和。 可以用“1+2+……+100”来求解,但繁琐。换个思路: 首先设置一个累计器sum,其初值为0,利用sum += n来计算(n依次取1、2、……、100),只要解决以下3个问题即可: (1)将n的初值置为1; (2)每执行1次“sum += n”后,n增1; (3)当n增到101,停止计算。此时,sum值就是1~100的累计和。 循环结构是程序中一种很重要的结构。其特点是, 在给定条件成立时,反复执行某程序段,直到条件不成立为止。 给定的条件称为循环条件,反复执行的程序段称为循环体。 在C语言中,可用以下语句实现循环: (1)用for语句。 (2)用do-while语句。 (3)用while语句。 (4)用goto语句和if语句构成循环。 使用goto语句实现求解1~100累计和的程序可以如下: main( ) { int n=1, sum=0; loop: sum += n; n++; if (n=100) goto loop; printf(“sum=%d\n”, sum); } 其中“loop”为语句标号(格式:标号: 语句行),其命名遵循标识符命名规则。goto语句格式:goto 标号,功能为:使系统转向标号所在的语句行执行。 注意:结构化程序设计方法,主张限制使用goto语句。因为滥用goto语句,将会导致程序结构无规律、可读性差。 while语句 (“当型”循环) 一般形式: while(表达式) 循环体语句; 执行流程: expr 循环体 假(0) 真(非0) while 特点:先判断表达式,后执行循环体 说明: 循环体有可能一次也不执行 循环体可为任意类型语句 下列情况,退出while循环 条件表达式不成立(为零) 循环体内遇break,return,goto 无限循环: while(1) 循环体; expr 循环体 假(0) 真(非0) while while(表达式) 循环体语句; 例 用while循环求 #include stdio.h main() { int i,sum=0; i=1; while(i=100) { sum+=i; i++; } printf(%d,sum); } 循环初值 循环终值 循环变量增值 循环条件 循环体 do~while语句 (“直到型”循环) 一般形式: do-while语句的表达式 后面必须加分号。 do 循环体语句; while(表达式); 执行流程: do 循环体 expr 假(0) 真(非0) while 特点:先执行循环体,后判断表达式 说明: 至少执行一次循环体 do~while可转化成while结构 例 用do~while循环求 #include stdio.h main() { int i,sum=0; i=1; do { sum+=i; i++; }while(i=100); printf(%d,sum); } 例 while和do~while比较 #include stdio.h main() { int i,sum=0; i=1; while(i=100) { sum+=i; i++; } printf(%d,sum); } #include stdio.h main() { int i,sum=0; i=1; do { sum+=i; i++; }while(i=100); printf(%d,sum); } do-while语句和while语句的区别: do-while是先执行后判断,因此do-while至少要执行一次循环体。 而while是先判断后执行,如果条件不满足,则一次循环体语句也不执行。 在一般情况下,用while语句和用do-while语句处理同一问题时,若二者的循环体部分是一样的,它们的结果也一样。但在while后面的表达式一开始就为假(0值)时,两种循环的结果是不同的。 1、main() { int sum=0,i; scanf(%d,i); while (i=10) { sum=sum+i; i++ }; printf(%d, sum); } 运行情

文档评论(0)

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

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档