第05章C语言程序设计教程电子教案

更新时间:2023-06-06 22:17:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

C语言程序设计教程电子教案

第5章

循环结构程序设计

5.1 循环语句概述 5.2 for语句和while语句 5.3 直到型循环do-while语句 5.4 break语句与continue语句 5.5 应用举例 良好的源程序书写习惯──注释(续) [Return]

C语言程序设计教程电子教案

5.1 循环语句概述求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语言提供了3条循环语句来 实现,以简化、并规范循环结构程序设计。 在C语言中,可用以下语句实现循环: (1)用for语句。 (2)用do-while语句。 (3)用while语句。

C语言程序设计教程电子教案

(4)用goto语句和if语句构成循环。使用goto语句实现求解1~100累计和 的程序可以如下: main() //eex9.c { int n=1, sum=0; loop: sum += n; n++; if(n<=100) goto loop; 演示 printf("sum=%d\n",sum); getchar(); }

其中“loop:”为语句标号(格式:标号: 语句行),其命名遵循标识 符命名规则。goto语句格式:goto 标号,功能为:使系统转向标号所在 的语句行执行。 注意:结构化程序设计方法,主张限制使用goto语句。因为滥用 goto语句,将会导致程序结构无规律、可读性差。 另外,从功能上说,for语句可完全代替当型循环语句while,所以 该语句也不是必需的。

[Return]

C语言程序设计教程电子教案

5.2 for语句和while语句在3条循环语句中,for语句最为灵活,不仅 可用于循环次数已经确定的情况,也可用于循环 次数虽不确定、但给出了循环继续条件的情况。|------条件 |---初值 | |-----------步长 = 1 | | | for(i = 0; i < 10; i=i+1 ) { 循环体; } 先判后做, 若条件满足, 则执行循环体, 循环变量 i 加步长, 进入下一次循环…; 若条件不满足,则退出循环.

C语言程序设计教程电子教案

1.for语句的一般格式 for([变量赋初值];[循环继续条件];[循环变量增值]) { 循环体语句组;} 2.for语句的执行过程: (1)求解“变量赋初值”表达式。 (2)求解“循环继续条件”表达式。如果其值非0,执 行 (3);否则,转至(4)。 (3)执行循环体语句组,并求解“循环变量增值”表达 式, 然后转向(2)。 (4)执行for语句的下一条语句。 3.说明 (1)“变量赋初值”、“循环继续条件”和“循环变量 增值”部分均可缺省,甚至全部缺省,但其间的分号 不能省略。

C语言程序设计教程电子教案

(2)当循环体语句组仅由一条语句构成时,可以不使用 复合语句形式,如上例所示。

(3)“循环变量赋初值”表达式,既可以是给循环变量 赋初值的赋值表达式,也可以是与此无关的其它表达 式(如逗号表达式)。 例如,for(sum=0; i<=100; i++) sum += i; for(sum=0, i=1; i<=100; i++) sum += i; (4)“循环继续条件”部分是一个逻辑量,除一般的关 系(或逻辑)表达式外,也允许是数值(或字符)表 达式。

C语言程序设计教程电子教案

/* ex34_2.c 用循环计算 1+2+3+...+100 的值.*/ main() {int i,sum=0; for(i = 1; i <= 100; i++) sum=sum+i; printf("sum=%d\n",sum); getch(); } /*运行结果: 演示 sum=5050 */

C语言程序设计教程电子教案

//ex34_0.c输出10个A。 main() {int i; for(i = 0; i < 10; i++) printf("%c",'A'); getch(); } /*运行结果: AAAAAAAAAA

演示

C语言程序设计教程电子教案

/* ex34_5.c 用循环计算 10! */ main() {int i; long t=1; for(i=1;i<=10;i++) t = t * i; printf("t=%ld\n",t); getch(); } /*运行结果: t=3628800 */

演示

C语言程序设计教程电子教案

4.while语句 (1)一般格式 while(循环继续条件) { 循环体语句组;} (2)执行过程: 1)求解“循环继续条件”表达式。如果其值为 非0,转2);否则转3)。 2)执行循环体语句组,然后转1)。 3)执行while语句的下一条。 显然,while循环是for循环的一种简化形式(缺 省“变量赋初值”和“循环变量增值”表达 式)。

C语言程序设计教程电子教案

while 语句。 while(条件) { 语句体; <-- 条件满足(执行语句体)(先判后做) } 例求 1+2+3+...+100 的值 main() //ex35.c {int i=1, sum=0; while(i <= 100) /* 先判 */ {sum = sum + i; i = i + 1; /* 后做 */ } printf("sum = %d\n", sum); printf("i = %d\n", i ); getchar(); } sum = 5050 i = 101

演示

C语言程序设计教程电子教案

5.循环嵌套 (1)循环语句的循环体内,又包含另一个完整的循 环结构,称为循环的嵌套。循环嵌套的概念,对所有高 级语言都是一样的。 (2)for语句和while语句允许嵌套,do-while语句也 不例外。

[Return]

C语言程序设计教程电子教案

5.3 直到型循环do-while语句1.一般格式 do { 循环体语句组; }while(循环继续条件);

/*本行的分号不能缺省*/

当循环体语句组仅由一条语句构成时,可以不使用复合语句形式。 2.执行过程: (1)执行循环体语句组。 (2)计算“循环继续条件”表达式。如果“循环继续条件”表 达式的值为非 0(真),则转向(1)继续执行;否则,转向(3)。 (3)执行do-while的下一条语句。 do-while循环语句的特点是:先执行循环体语句组,然后再判断 循环条件。

C语言程序设计教程电子教案

do-while 语句。 do { 语句体; <-- 先做后判 }while(条件); 例求 1+2+3+...+100 的值。 main() //ex36.c {int i = 1, sum = 0; do /* 先做 */ {sum = sum + i; i = i + 1; }while(i <= 100); /* 后判 */ printf("sum=%d\n",sum); printf("i=%d\n",i); getchar(); } sum=5050 i=101

演示

C语言程序设计教程电子教案

do-while语句比较适用于处理:不论条件是否 成立,先执行1次循环体语句组的情况。除此之 外,do-while语句能实现的,for语句也能实现, 而且更简洁。[Return]

C语言程序设计教程电子教案

5.4

break语句与continue语句为了使循环控制更加灵活,C语言提供了break语句和continue语句。 1.一般格式: break; continue; 2.功能 (1)break:强行结束循环,转向执行循环语句的下一条语句。 (2)continue:对于for循环,跳过循环体其余语句,转向循环变 量增量表达式的计算;对于while和do-while循环,跳过循环体其余语句, 但转向循环继续条件的判定。 3.break和continue语句对循环控制的影响如图5-4所示。 4.说明 (1)break能用于循环语句和switch语句中,continue只能用于循环 语句中。 (2)循环嵌套时,break和continue只影响包含它们的最内层循环, 与外层循环无关。 [Return]

C语言程序设计教程电子教案

例: break 语句退出循环(终止整个循环)。 main() //ex59_3.c {int i; for(i=0;i<5;i++) {printf("**********\n"); break; printf("==========\n"); } getch(); } 演示 运行结果: **********

C语言程序设计教程电子教案

例:continue 语句结束本次循环(不终止整个循环)。 main() //ex59_2.c {int i; for(i=0;i<5;i++) { printf("**********\n"); continue; printf("==========\n"); } getch(); } 运行结果: ********** ********** 演示 ********** ********** **********

C语言程序设计教程电子教案

良好的源程序书写习惯──注释(3)循环结构 在C语言中,循环结构由循环语句for、while和 do...while来实现。 作为注释,应在它们的前面说明其功能,在循环条 件判断语句行的后面,说明循环继续条件的含义,如下 所示。 1)for语句 /*功能*/ for(变量初始化;循环条件;变量增值) { …… }

C语言程序设计教程电子教案

2)while语句 /*功能说明*/ while(循环条件) /*循环继续条件的含义*/ { …… } 3)do...while语句 /*功能说明*/ do { …… }while(循环条件); /*循环继续条件的含义*/ 如果循环嵌套,还应说明每层循环各控制什么。

本文来源:https://www.bwwdw.com/article/ydj1.html

Top