c语言循环语句第三部分常用,C语言三种循环语句(28页)-原创力文档

本文详细介绍了三种基本的循环语句:for循环、while循环和do-while循环,并通过实例展示了如何使用这三种循环来求解1到100的累加和。此外,还讲解了循环控制中的break语句的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

三种基本的循环语句:for语句、while语句和do-while语句。

一、循环语句

(一)、for循环它的一般形式为:

for(;;)

语句;

初始化总是一个赋值语句,它用来给循环控制变量赋初值;条件表达式是一个关系表达式,它决定什么时候退出循环;增量定义循环控制变量每循环一次后按什么方式变化。这三个部分之间用;分开。

例如:

for(i=1;i<=10;i++)

语句;

上例中先给i赋初值1,判断i是否小于等于10,若是则执行语句,之后值增加1。再重新判断,直到条件为假,即i>10时,结束循环。

注意:

(1).for循环中语句可以为语句体,但要用{和}将参加循环的语句括起来。

(2).for循环中的初始化、条件表达式和增量都是选择项,即可以缺省,但;不能缺省。省略了初始化,表示不对循环控制

变量赋初值。省略了条件表达式,则不做其它处理时便成为死循环。省略了增量,则不对循环控制变量进行操作,这时可在语句体中加入修改循环控制变量的语句。

(3).for循环可以有多层嵌套。

例如:

for(;;)语句;

for(i=1;;i+=2)语句;

for(j=5;;)语句;

这些for循环语句都是正确的。

main()

{

inti,j;

printf(ij\n);

for(i=0;i<2;i++)

for(j=0;j<3;j++)

printf(%d%d\n,i,j);

}

输出结果为:

ij

00

01

02

10

11

12

用for循环求1+2+……+100的和:

main()

{

intsn=0,i;

for(i=1;i<=100;i++)

sn+=i;/*1+2+……+100*/

printf(%d\n,sn);

}

从程序可以看出,使用循环语句可以大大简化代码。(二)、while循环它的一般形式为:

while(条件)

语句;

while循环表示当条件为真时,便执行语句。直到条件为假才结束循环。并继续执行循环程序外的后续语句。例如:

#includestdio.h

main()

{

charc;

c='\0';/*初始化c*/

while(c!='\n')/*回车结束循环*/

c=getche();/*带回显的从键盘接收字符*/

}

上例中,while循环是以检查c是否为回车符开始,因其事先被初始化为空,所以条件为真,进入循环等待键盘输入字符;一旦输入回车,则c='\n',条件为假,循环便告结束。与for循环一样,while循环总是在循环的头部检验条件,这就意味着循环可能什么也不执行就退出。

注意:

(1).在while循环体内也允许空语句。

例如:

while((c=getche())!='\n');

这个循环直到键入回车为止。

(2).可以有多层循环嵌套。

(3).语句可以是语句体,此时必须用{和}括起来。用while循环求1+2+……+100的和:

main()

{

intsn=0,i=0;

while(++i<=100)

sn+=i;/*求1+2+……+100*/

printf(%d\n,sn);

}

(三)、do--while循环它的一般格式为:

do

{

语句块;

}

while(条件);

这个循环与while循环的不同在于:它先执行循环中的语句,然后再判断条件是否为真,如果为真则继续循环;如果为假,

do-while循环至少要执行一次循环语句。则终止循环。因此,

同样当有许多语句参加循环时,要用{和}把它们括起来。用do--while循环求1+2+……+100的和:

main()

{

intsn=0,i=1;

do

sn+=i;/*求1+2+……+100*/

while(++i<=100);

printf(%d\n,sn);

}

从上面三个程序看出,使用for,while和do--while求解同样的问题,基本思路都差不多,只是在第一次计算时,注意初值。

二、循环控制

(一)、break语句

break语句通常用在循环语句和开关语句中。当break用于开关语句switch中时,可使程序跳出switch而执行switch以后的语句;如果没有break语句,则将成为一个死循环而无法退出。break在switch中的用法已在前面介绍开关语句时的例子中碰到,这里不再举例。

当break语句用于do-while、for、while循环语句中时,可使程序终止循环而执行循环后面的语句,通常break语句总是与if语句联在一起。即满足条件时便跳出循环。例如:

main()

{

intsn=0,i;

for(i=1;i<=100;i++)

{

if(i==51)break;/*如果i等于51,则跳出循环*/sn+=i;/*1+2+……+50*/

}

printf(%d\n,sn);

}

可以看

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值