计算机教程
本文由夏天来解答贡献
ppt文档可能在WAP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机查看。
第五章 循环结构
5.1 while语句 5.2 do-while语句 5.3 for 语句 5.4 break、continue语句 5.5 循环的嵌套 5.6 复合结构程序举例
C语言程序设计教程
2
的累计和。 求1~100的累计和。 ~ 的累计和 根据已有的知识,可以用“ 来求解, 根据已有的知识,可以用“1+2+……+100”来求解,但显 来求解 然很繁琐。现在换个思路来考虑: 然很繁琐。现在换个思路来考虑: 首先设置一个累计器sum,其初值为 ,利用 首先设置一个累计器 ,其初值为0,利用sum += n来 来 计算( 依次取 依次取1、 、 ),只要解决以下 计算(n依次取 、2、……、100),只要解决以下 个 、 ),只要解决以下3个 问题即可: 问题即可: 的初值置为1; (1)将n的初值置为 ; ) 的初值置为 (2)每执行 次“sum += n”后,n增1; )每执行1次 后 增 ; 增到101时 停止计算。此时, (3)当n增到 时,停止计算。此时,sum的值 ) 增到 的值 就是1~ 的累计和 的累计和。 就是 ~100的累计和。 根据已有的知识,单独实现每一步都不难。但是, 根据已有的知识,单独实现每一步都不难。但是, 由于需要经常使用这种重复计算结构( 由于需要经常使用这种重复计算结构(称为循环结 ),C语言提供了 条循环语句来实现,以简化、 语言提供了3条循环语句来实现 构), 语言提供了 条循环语句来实现,以简化、并 规范循环结构程序设计。 规范循环结构程序设计。
2010/9/6
C语言程序设计教程
3
在C语言中,可用以下语句实现循环: 语言中,可用以下语句实现循环: 语句。 (1)用while语句。 ) 语句 语句。 (2)用do-while语句。 ) 语句 (3)用for语句。 ) 语句。 语句 语句和if语句构成循环 (4)用goto语句和 语句构成循环。 ) 语句和 语句构成循环。 功能为:使系统转向标号所在的语句行执行。 功能为:使系统转向标号所在的语句行执行。 goto语句格式:goto 标号; 语句格式: 标号 语句格式 语句标号格式:标号: 语句标号格式:标号 语句行 标号命名遵循标识符命名规则。 标号命名遵循标识符命名规则。
2010/9/6
C语言程序设计教程
4
[案例 案例5.1]使用 使用goto语句实现求解 ~100累计和的程序 语句实现求解1~ 累计和的程序 案例 语句实现求解
main() { int n=1, sum=0; loop: sum += n; n++; if (n<=100) goto loop; printf(“sum=%d\n”, sum); } 其中“ 其中“loop:”为语句标号 为语句标号 注意:结构化程序设计方法,主张限制使用 语句。 注意:结构化程序设计方法,主张限制使用goto语句。 语句 因为滥用goto语句,将会导致程序结构无规律、可读 语句, 因为滥用 语句 将会导致程序结构无规律、 性差。 性差。
C语言程序设计教程
2010/9/6
5
while语句 5.1 while语句
while 语句是通过判断循环控制条件是否满足来决定是否继续 循环的语句。 循环的语句。 假 1.一般格式 一般格式 表达式 while(循环继续条件 循环继续条件) 循环继续条件 真 { 循环体语句组;} 循环体语句组; 语句 2.执行过程 执行过程 执行过程如图所示。 执行过程如图所示。 1)求解“循环继续条件”表达式。如果其值为非 ,转2); )求解“循环继续条件”表达式。如果其值为非0, ); 否则转3)。 否则转 )。 2)执行循环体语句组,然后转 )。 )执行循环体语句组,然后