C语言——循环控制

一、goto语句以及用goto语句构成循环

1、goto语句的一般形式

goto    语句标号;

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

        (1)、与if语句一起构成循环结构。

        (2)、从循环体中跳转到循环体外,但在C语言中可以用break和continue语句跳出本层循环和结束本次循环。

二、用while语句实现循环

1、while语句的一般形式

        while    (表达式) 语句

        特点:先判断表达式,后执行语句。

三、用do……while语句实现循环

1、do……while语句的一般形式

        do

               循环体语句

        while        (表达式);

四、用for语句实现循环

1、for语句的一般形式

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

        for(循环变量赋初值;循环条件;循环变量增值)语句

2、执行过程

(1)、先求解表达式1;

(2)、求解表达式2,若其值为真(值为非零),则执行for语句中指定的内嵌语句,然后执行下面第(3)步。若为假(值为0),则循环结束,转到第(5)步;

(3)、求解表达式3;

(4)、转回上面第(2)步骤继续执行;

(5)、循环结束,执行for语句下一个语句。

对于以上for语句也可改写成while循环的形式:

表达式1;

while   表达式2

{

        语句

        表达式3;

}

3、for语句使用说明

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

          (2)如果表达式2省略,即不判断循环条件,循环无终止地进行下去。也就是认为表达式2始终为       真。
          (3)表达式3也可以省略,但此时程序设计者应另外设法保证循环能正常结束。
          (4)可以省略表达式1和表达式3,只有表达式2,即只给循环条件。
          (5)3个表达式都可省略。
          (6)表达式1可以是设置循环变量初值的赋值表达式,也可以是与循环变量无关的其他表达式。
          (7)表达式一般是关系表达式(如i<=100)或逻辑表达式(如a<b &.& x<y),但也可以是数值表达式或      字符表达式,只要其值为非零,就执行循环体。

五、循环的嵌套

1、3种循环的嵌套。

六、几种循环比较

        (1)4种循环都可以用来处理同一问题,一般情况下它们可以互相代替。


        (2)在while循环和do…while循环中,只在while后面的括号内指定循环条件,因此为了使循环能正常结束,应在循环体中包含使循环趋于结束的语句(如i+十,或i=i+1等)。
for循环可以在表达式3中包含使循环趋于结束的操作,甚至可以将循环体中的操作全部放到表达式3中。


        (3)用while和do…while循环时,循环变量初始化的操作应在while和do…while语句之前完成。而for语句可以在表达式1中实现循环变量的初始化。


        (4)while循环、do…while循环和for循环,可以用break语句跳出循环,用continue语句结束本次循环(break语句和continue语句见6.8节)。而对用goto语句和if语句构成的循环,不能用break语句和continue语句进行控制。

七、break语句和continue语句

1、break语句

        一般形式:       
        break;
        break语句可以用来从循环体内跳出循环体外,即提前结束循环,接着执行循环下面的语句。
(注:break语句不能用于循环语句和switch语句之外的任何其他语句中)

2、continue语句

        一般形式:   
        continue;     
        continue语句为结束本次循环,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定。
  • 21
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值