c语言日学课——循环控制.docVIP

c语言日学课——循环控制.doc

此“教育”领域文档为创作者个人分享资料,不作为权威性指导和指引,仅供参考
  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
c语言日学课——循环控制

1.1 概述 5 s. G; t _7 M 什么是循环? + o- }) N f. H% Z 为什么要使用循环? . ~5 P8 c( V+ J# o 问题1: 5 L* R0 E# ]( o, r ??A) \??Z u7 w# u问题2:求学生平均成绩??分数相加后除以课数 + {. o$ \) n V1 `( N在许多问题中需要用到循环控制。循环结构是结构化程序设计的基本结构之一,它和顺序结构、选择结构共同作为各种复杂程序的基本构造单元。 3 L* v( A# C% j2 j/ _ 1.2goto语句以及用goto语句构成循环 ! R# W0 W9 f ^3 K; u3 j6 V??goto语句为无条件转向语句,它的一般形式为goto 语句标号; 语句标号用标识符表示,它的定名规则与变量名相同,即由字母、数字和下划线组成,其第一个字符必须为字母或下划线。 . n$ Z* Y W. j( i( I \6 f5 ] 例如:goto??label_1; 合法; 8 ]; Q C3 A+ V; H* x? ???goto??123;? ? 不合法. ! p0 U5 l4 P2 _4 j4 g 结构化程序设计方法主张限制使用goto语句,因为滥用goto语句将使程序流程无规律、可读性差.一般来说,可以有两种用途: $ I4 P5 Y( Q% S% `1 f(1) 与if语句一起构成循环结构; ( d- x# T `* Z??G9 A; j, o(2) 从循环体中跳转到循环体外。 0 O2 l: ?% P1 E# _* g??O? ? 但是这种用法不符合结构化原则,一般不宜采用,只有在不得已时(例如能大大提高效率)才使用. 4 e5 m, X6 g- U/ y 例1.1??用if语句和goto语句构成循环,求1到100的和 void main( ) {? ?? ? ? ???int i, sum=0; ? ???i=1; ? ???loop:? ? ? ?? ? if(i=100) ? ?? ? { sum=sum+i; ? ?? ?? ? i++; ? ?? ?? ?goto loop; ? ?? ? } ? ???printf(%d\\n″,sum); } 复制代码 运行结果:5050 ( J+ S. y A9 }/ f4 _/ N 说明:这里用的是“当型”循环结构,当满足“i=100” 时执行花括弧内的循环体。 1 B4 r: I6 A??a U u 1.3??用while语句实现循环 v8 v6 i7 b R3 S* ~5 C K1 e Z6 t9 f( M7 q( v. ?9 F??u1 l h3 u! awhile语句用来实现“当型”循环结构。 {1 @4 w4 _: I7 }! T 一般形式: ( ^2 t( O; I) @? ?? ? while (表达式) 语句 2 d U% p9 q% J+ M9 @- g/ |% s当表达式为非0值时,执行while语句中的内嵌语句。其特点是:先判断表达式,后执行语句。 7 h j0 c, D3 i- q C: ]* N7 Y??{7 v 6 h% t* B0 K1 c: A; x, F E 例1.2??求1到100的和 #include stdio.h void main() { ? ? int i,sum=0; ? ? i=1; ? ? while (i=100) ? ? { ? ?? ? sum=sum+i; ? ?? ? i++; ? ???} ? ? printf(″%d\\n″,sum); } 复制代码 运行结果:5050 : |# r4 I/ k: i6 ]; `8 M! t 说明:(1)循环体如果包含一个以上的语句,应该用花括弧括起来,以复合语句形式出现.(2)在循环体中应有使循环趋向于结束的语句 X. P) U4 r/ a. B4 @: Z注意: M/ j6 c i# R) `(1)循环体如果包含一个以上的语句,应该用花括弧括起来,以复合语句形式出现。 3 v! m A4 ] R% R$ |% n+ k3 w: T9 K/ m(2)在循环体中应有使循环趋向于结束的语句。如果无此语句,则i的值始终不改变,循环永不结束。 / a+ K5 d% f4 a5 I b q 1.4 用do-while语句实现循环 ( F! ^4 _0 T. `: T9 k/ M1 B9 Y* R do-while语句的特点:先执行循环体,然后判断循环条件是否成立。 W2 I. P }1 W7 B* U- q 一般形式:? ?do 7 ^3 Y( B3 W. I8 E( j??E7 Q/ S; g5 a?

文档评论(0)

panguoxiang + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档