- 1、本文档共30页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言程序设计教程第5章整理ppt
5.1 while语句 5.2 do-while语句 5.3 for 语句 5.4 break、continue语句 5.5 循环的嵌套 5.6 复合结构程序举例 在C语言中,可用以下语句实现循环: (1)用while语句。 (2)用do-while语句。 (3)用for语句。 (4)用goto语句和if语句构成循环。 功能为:使系统转向标号所在的语句行执行。 goto语句格式:goto 标号; 语句标号格式:标号: 语句行 标号命名遵循标识符命名规则。 5.1 while语句 [案例5.2] 用while语句求1~100的累计和。main() { int i=1,sum=0; /*初始化循环控制变量i和累计器sum*/ while( i=100 ) { sum += i; /*实现累加*/ i++; /*循环控制变量i增1*/ } printf(“sum=%d\n”,sum); } 程序运行情况如下:sum=5050 从此例中可以看出: 1.循环体中若包含一个以上的语句,用{}括起来形成复合语句; 2.循环体中不能有死循环,所以循环控制变量值在循环体内必须有所改变,即循环体中必须有循环趋于结束的语句。 例如: i=1; while (i=100) putchar(‘*’); i++; [案例5.3]编程提示用户输入一系列整数,以0为结束标志,统计正、负数个数 void main( ) { int a, m, n; m=0;n=0; printf(“Input integer numbers:\n”); scanf(“%d”,a); while (a!=0) { if (a0) m++; else n++; scanf(“%d”,a); } printf(“m=%d, n=%d\n”, m, n); } 5.2 do—while语句 5.3 for语句 在3条循环语句中,for语句最为灵活,不仅可用于循环次数已经确定的情况,也可用于循环次数虽不确定、但给出了循环继续条件的情况。 1.for语句的一般格式 for(表达式1;表达式2;表达式3) { 循环体语句组;} for([变量赋初值];[循环继续条件];[循环变量增值]) { 循环体语句组;} 2.for语句的执行过程 (1)求解“变量赋初值”表达式。 (2)求解“循环继续条件”表达式。如果其值 非0,执行(3);否则,转至(4)。 (3)执行循环体语句组,并求解“循环变量增 值”表达式,然后转向(2)。 (4)执行for语句的下一条语句。 [案例5.6] 求1~100的累计和。main() { int i,sum=0; /*将累加器sum初始化为0*/ for(i=1; i=100; i++) sum += i; /*实现累加*/ printf(sum=%d\n,sum); } 程序运行情况如下: sum=5050 4.说明 (1)“变量赋初值”、“循环继续条件”和“循环变量增值”部分均可缺省,甚至全部缺省,但其间的分号不能省略。 (2) for语句中的表达式1和表达式3可以是逗号表达式,特别是有两个循环变量参与对循环的控制时。表达式1和表达式3为逗号表达式,将使程序显得非常清晰。 例如, for( i=1, j=10 ;i=j; i++, j--) (3)“循环继续条件”部分是一个逻辑量,除一般的关系(或逻辑)表达式外,也允许是数值(或字符)表达式。 如:for (; (c=getchar( ))!=’\n’;) printf(“%c”,c); 注意:for循环的条件检验总是在循环的头部进行的,即当开始时条件为false时,循环不被执行。如: for (x=2,p=1;x2;++x) p=p*x; 由于x=2,循环不被执行。 5.4 break语句与continue语句 为了使循环控制更加灵活,C语言提供了break语句和continue语句。 这一类语句的功能是改变程序的结构,使程序从其所在的位置转向另一处。这类语句是非结构化语句。 1.一般格式: break; continue; 2.功能 (1)break:强行结束循环转向执行循环
文档评论(0)