1 / 21
文档名称:

《C语言程序设计与数据结构》第5章 循环结构.ppt

格式:ppt   页数:21
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

《C语言程序设计与数据结构》第5章 循环结构.ppt

上传人:rjmy2261 2013/1/2 文件大小:0 KB

下载得到文件列表

《C语言程序设计与数据结构》第5章 循环结构.ppt

文档介绍

文档介绍:第五章循环结构
学习重点:
l         掌握 while语句及for语句的执行流程;
l         学会white语句及for语句的灵活运用。
C语言程序设计与数据结构
循环结构,是程序设计三种基本结构之一。其特点是,在给定条件成立时,反复执行某程序段,直到条件不成立为止。给定的条件称为循环条件,反复执行的程序段称为循环体。利用循环结构进行程序设计,一方面降低了问题的复杂性,减少了程序设计的难度:另一方面也充分发挥了计算机自动执行、运算速度快的特点。
C语言提供了多种循环语句:
(1)       while语句;
(2)       do-while语句
(3) for语句。
上述多种循环语句,可以组成各种不同形式的循环结构。在程序设计时应根据实际需要,合理地选择实现循环的语句。
C语言程序设计与数据结构
while语句
while语句用来实现“当型”循环结构。
一般形式为: while (表达式) 语句体
其中,while后面用圆括号括起来的表达式是循环条件,通常是可以判断真假的条件表达式,用来控制循环体是否执行。后面的语句称为循环体,可以是单条语句或多条语句,若有多条语句,则需要用花括号括起来构成复合语句。
while语句的具体执行过程:。
(1) 先计算表达式的值。当值非0时,执行步骤(2);当值为0时,执行骤(4)。
(2) 执行循环体中语句。
(3) 转去执行步骤(1 ) 。
(4) 退出while循环。
由上所述,“当型”循环结构的特点是:
先判断表达式,后执行语句。
语句A
表达式
0(假)
1(真)
C语言程序设计与数据结构
【】用while语句求 1+2+3+4+…+99+100的和。
# include <>
main( ) {
int i,sum=0; i=1;
while(i<=100) {
sum=sum+i;
i++; }
printf("sum=%d\n",sum);}
程序说明:
(1) 程序中,i称为循环控制变量,用来控制循环的次数,sum称为累加变量,使用这种变量时要先赋初值。
(2) 如果在第一次进入循环时,while后圆括号内表达式的值为假,则循环体一次也不执行。在本程序中,例如i的初值大于100,将使表达式的值为假,则循环体一次也不执行。
(3) 在循环体中一定要有使循环趋向结束的操作,以上程序中循环体内的语句i++使i的值不断增1,当i>100时,循环条件为假,循环结束。如果没有这一语句,则i的值始终不变,循环将无限地进行下去。
(4) 语句的先后位置可根据需要进行调整,变量的初值也不是一成不变的。例如,上述程序可进行如下改编:
i=0;
while(i<100)
{ i++; sum=sum+i;
}
C语言程序设计与数据结构
【】统计从键盘输入一行字符中大写字母的个数。
#include <>
main( ){
int count=0;
char c;
printf("input a string:\n");
while((c=getchar())!='\n')
{
if (c>=’A’&&c<=’Z’)
count++;
}
printf("%d",count);
}
上述程序中的循环条件为getchar()!='\n',其含义是,只要从键盘输入的字符不是回车就继续循环,直到按回车键停止。循环体中嵌套if单分支语句,coun++完成对输入的大写字母的个数计数。
C语言程序设计与数据结构
通过以上两个例子我们可以看出,使用while语句应注意以下几点:
while语句中的表达式一般是关系表达式或逻辑表达式,只要表达式的值为真(非0)即可继续循环,执行循环体中的语句。因此说,如果表达式的值一开始就为“假”,则循环体将一次也不执行。
(2) 循环体中若包括有一个以上的多条语句时,则必须用{ }括起来,组成复合语句。如果不加{ },while语句的范围只到while后面的第一个分号处。
(3) 避免出现死循环现象。循环体中一定要有使循环趋向结束的语句;若循环条件的值永远为真,而循环体中又没有其他中止循环的语句,该循环将无休止地进行下去,形成死循环。
C语言程序设计与数据结构
do-while语句
do-while语句用来实现“直到型”循环结构。
一般形式为:
do
语句体
while(表达式); /*注意最后有个分号*/
这个循环与while循环的不同在于:它先执行循环中的语句,然后再判断表达式是否为真,如果为真则继续循环;如果为假,则终止循环执行。因此,do-while循环至少要执行一次循环体中的语句。
d