c语言中的循环控制

      1.goto 语句以及用 goto语句构成循环

          goto语句为无条件转向语句,他的一般形式为:

          goto语句标号;

          语句标号用标识符表示,它的定名规则与变量名相同,即由字母、数字和下划线组成,其第一个字符必须为字母或下划线,不能为数字,不能用整数来做标号。

          goto语句与if语句一起构成循环语句。

其中的 i =1,称为循环变量初始化;   i <= 100;称为循环的执行条件;   ++i,称为是循环趋于结束的语句。

2. while 语句

    while 语句用来实现“当型”循环结构,其一般形式如下:

    while(表达式) 语句

    当表达式为非0时,执行while语句中的内嵌语句,其特点时:先判断表达式,再执行语句。

    注:while语句中也应该有循环变量初始化、循环的执行条件和使循环趋于结束的语句。

           循环体如果包含一个以上的语句,应该用花括号括起来,以复合语句形式出现如果不加花括号,则 while语句的范围只到while后面第一个分号处。

           while(表达式)后面不可以加“;”,加了封号程序会陷入死循环。

3.do......while语句

     do......while语句的一般表达式为:

    do

        循环体语句

    while(表达式);   其特点为:先执行循环体,再判断循环条件是否成立。

     注:do......while语句中,while(表达式)后面的“;”绝对不能少。,

             do......while语句中也应该有循环变量初始化、循环的执行条件和使循环趋于结束的语句。

4.for语句

for语句的一般表达式为:

for(表达式1;表达式2;表达式3)语句

它的执行过程如下:
(1)先求解表达式1。
(2)求解表达式2,若其值为真(值为非0),则执行for语句中指定的内嵌语句,然后执行下面第(3)步。若为假(值为0),则结束循环,转到第(5)步。
(3)求解表达式3。
(4)转回上面第(2)步骤继续执行。
(5)循环结束,执行for语句下面的一个语句。

说明:

        (1)for语句的一般形式中的“表达式1”可以省略,此时应在for语句之前给循环变量赋初值。注意,省略表达式1时,其后的分号不能省略。

        (2)如果表达式2省略,即不判断循环条件,循环无终止地进行下去。也就是认为表达式2始终为真。

         (3)表达式3也可以省略,但此时程序设计者应另外设法保证循环能正常结束。

         (4)可以省略表达式1和表达式3,只有表达式2,即只给循环条件。

       (5)三个表达式都可省略;相当于无终止的执行循环体。

       (6)表达式1可以是设置循环变量初值的赋值表达式,也可以是与循环变量无关的其他表达式。              表达式1和表达式3可以是一个简单的表达式,也可以是遵号表达式,即包含一个以上的简单表达式,中间用逗号间隔。

          (7)表达式一般是关系表达式(如i<=100)或逻辑表达式(如a<b&&x<y),但也可以是数值表达式或字符表达式,只要其值为非零,就执行循环体。

        (8)for(表达式1;表达式2;表达式3)后面不能加分号。

          求水仙花数

       

5.循环的嵌套

     

6.几种循环的比较

    (1)4种循环都可以用来处理同一问题,一般情况下它们可以互相代替。但一般不提倡用 goto 型循环。
    (2)在while循环和do…while循环中,只在while后面的括号内指定循环条件,因此为了使循环能正常结束,应在循环体中包含使循环趋于结束的语句(如i十十,或i-i+1等)。for循环可以在表达式3中包含使循环趋于结束的操作,甚至可以将循环体中的操作全部放到表达式3中。因此for语句的功能更强,凡用while循环能完成的,用for 循环都能实现。
    (3)用while和do…while循环时,循环变量初始化的操作应在while和do…while语句之前完成。而for语句可以在表达式1中实现循环变量的初始化。
    (4)while循环、do…while 循环和 for 循环,可以用 break语句跳出循环,用 continue语句结束本次循环(break语句和continue语句见6.8节)。而对用goto语句和if语句构成的循环,不能用 break语句和continue 语句进行控制。

7.break语句和continue 语句

    1.break语句

     break语句可以用来从循环体内跳出循环体,即提前结束循环。

     break 语句不可以用于循环语句和switch语句之外的其它任何语句中。

    2.continue语句

       一般形式为 :

      continue ;

            其作用为结束本次循环,即跳过循环体中下面尚未执行的语句,接着进行下一次是否执行循环的判定。
            continue语句和break语句的区别是:continue语句只结束本次循环,而不是终止整个循环的执行。而break语句则是结束整个循环过程,不再判断执行循环的条件是否成立。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值