- 1、本文档共13页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
05循环结构程序设计doc
C 语言程序设计:05 循环结构程序设计
PAGE 61
05 循环结构程序设计
教学目标1. 掌握 while 和 do-while 循环结构
2. 掌握 for 循环结构
3. 掌握循环的嵌套
4. 掌握 continue 语句和 break 语句教学
重难点1. while 和 do-while 循环结构
2. for 循环结构
3. 循环的嵌套
4. continue 语句和 break 语句5.1 概述
在许多问题中需要用到循环控制。例如:要输入全校学生成绩;求若干个数之和;迭代求根等。几乎所有实用的程序都包含循环。循环结构是结构化程序设计的基本结构之一,它和顺序结构、选择结构共同作为各种复杂程序的基本构造单元。因此熟练掌握选择结构和循环结构的概念及使用是程序设计的最基本的要求。
C 语言有4种循环语句:
用 goto 语句和 if 语句构成循环;
while 语句;
do-while 语句;
for 语句。
5.2 goto 语句以及用 goto 语句构成循环
???goto 语句为无条件转向语句,一般形式为
goto 语句标号;
语句标号用标识符表示。例如:
goto label_1;
结构化程序设计方法主张限制或不使用 goto 语句,因为滥用 goto 语句将使程序流程无规律、可读性差,但不是绝对禁止使用 goto 语句。一般来说有两种用途:
⑴与 if 语句一起构成循环结构;
⑵从循环体中跳转到循环体外,但在 C 语言中可以用 break 语句和 continue 语句跳出本层循环和结束本次循环。goto 语句的使用机会已大大减少,只是需要从多层循环的内层循环跳到外层循环外时才用到 goto 语句。但是这种用法不符合结构化原则,一般不宜采用,只有在不得已时(例如能大大提高效率)才使用。
例 5.1 用 if 语句和 goto 语句构成循环,求。
#include stdio.h
void main()
{
int i, sum = 0;
i = 1;
loop: if (i = 100)
{
sum = sum + i;
i++;
goto loop;
}
printf(%d\n, sum);
}
这里用的是“当型”循环结构,当满足“i = 100” 时执行花括号内的循环体。
5.3 while 语句
while 语句用来实现“当型”循环结构。一般形式如下:
while (表达式)
语句
当表达式为“非0”时,执行 while 语句中的内嵌语句。流程图见图 5.1。特点是:先判断表达式,后执行语句。
图5.1 while 语句图5.2 例 5.2 用 while 语句求1到100的累加 例 5.2 求。流程图见图 5.2。
#include stdio.h
void main()
{
int i, sum = 0;
i = 1;
while (i = 100)
{
sum = sum + i;
i++;
}
printf(%d\n, sum);
}
注意:
⑴循环体如果包含一个以上的语句,应该用花括号括起来,以复合语句形式出现。
⑵在循环体中应有使循环趋向于结束的语句。例如,在本例中循环结束的条件是“i 100”,因此在循环体中应该有使 i 增值以最终导致 i 100 的语句,用“i++;”语句来达到此目的。如果无此语句,则 i 的值始终不改变,循环永不结束。
5.4 do-while 语句
do-while 语句的特点是先执行一次循环体,然后判断循环条件是否成立。一般形式为
do
循环体语句
while (表达式);
执行过程:先执行一次指定的循环体语句,然后判别表达式,当表达式的值为“非0” 时,返回重新执行循环体语句,如此反复,直到表达式的值等于“0”为止,此时循环结束。流程图见图 5.3。
图5.3 do-while 语句
例 5.3 用 do-while 语句求。流程图见图 5.4。
#include stdio.h
void main()
{
int i, sum = 0;
i = 1;
do
{
sum = sum + i;
i++;
}
while (i = 100);
printf(%d\n, sum);
}
图5.4 例 5.3 用 do-while 语句求1到100的累加
同一个问题可以用 while 语句处理,也可以用 do-while 语句处理。两种语句结构可以互相转换。do-while 语句结构是由一个语句加一个 while 语句结构成的。
在一般情
文档评论(0)