• C语言中的while循环、do while、for循环


    ------------while循环使用方法: ----------------

    1)while循环的特点: 

    如果while中的条件一开始就不成立,那么循环体中的语句永远不会被执行 

    2)while语句的语义是: 

    如果条件成立,就会执行循环体中的语句(“循环体”就是while后面大括号{}中的内 容)。然后再次判断条件,重复上述过程,直到条件不成立就结束while循环 

    while循环的格式: 

    if(条件){ 

    while ( 条件表达式 ) 

    {
    语句1; 

    语句2; .... 

    }while循环使用注意  

    while循环使用注意 

    1、死循环:任何数值都有真假性 

    while (-1) { printf("死循环 "); 

    2、当一个变量与一个常量进行== 或 != 的时候,通常把常量写在前面 

    int num = 3; 
    
    while (3 == num) { 
    
    printf("num = %d
    ",num); 
    
    num++; } 
    

    3、while 后如果只有一条语句它可以省略大括号 

    1)空语句它也是一条语句 2)while小阔号后面不可以直接写分号 

    int num = 0; 
    
    while (num < 3); { 
    
    printf("num = %d
    ",num); 
    
    num++; } 
    

    4、作用域:内部代码块中定义的变量不可以在外边代码块中访问 

    while (1 < 3) { int a = 0; 
    
    }
    printf("a = %d
    ",a); 
    

    5、作用域紊乱 

    while (1 < 3) int num = 5; 
    

    6、最简单死循环 

    while (1); 
    

    ---------do ... while循环的基本格式 ---------

    while(条件){ 语句块; 

     当型循环:当条件满足的时候,再去执行循环体

    do { 语句1; 

    语句2; .... 

    } while ( 条件 ); 直到型循环:先执行循环体,然后判断条件,直到条件为假就结束 

    2、do...while语句用法 

    1)do...while语句的语义是: 

    当执行到do-while循环时,首先会执行一遍循环体中的语句(“循环体”就是do后面大括号 {}中的内容)。接着判断while中的条件,如果条件成立,就执行循环体中的语句。然后再 次判断条件,重复上述过程,直到条件不成立就结束while循环 

    2)do-while循环的特点: 

    不管while中的条件是否成立,循环体中的语句至少会被执行一遍 int i=0; 

    pastedGraphic.png

    int i=0; do{ 

     i++;

    } while(i<10);

    1、do...while和while的对比 

    while 是先判断再执行
    do-while 是先执行再判断 

       关于while和do while对比

      1)当循环控制条件第一次判断不为假的时候

    while 和 dowhile循环体执行的次数相同

    2)当循环控制条件第一次判断为假的时候

      while循环的循环体 执行 0 次

       do while 执行1次

    例:
    int i=10; do{ System.err.println(i); i++; }while(i<10); 打印的也是10,最终i=11 两者的区别在于第一圈循环时,while是先判断循环条件,再循环.所以第一个程序什么都不打印. 而do-while则是先执行后判断.所以,第二个程序先打印10,然后i++然后跳出循环. 

    --------------for循环结构及执行过程 ------------

    一般形式: 

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

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

    for循环使用 

    for语句常见的形式: for(循环变量赋初值;循环条件;循环变量增值) 例如: for(int i=1;i<=100;i++) sum=sum+i; 

    pastedGraphic_1.png 

    for循环的其他形式 

    1)表达式省略(三个表达式都可以省略)
    如:for(; ;) 语句相当于while(1) 语句,即不设初值,不判断条件(认为表达式2为真值),循环 变量不增值。无终止地执行循环体。 

    2)循环控制无关的任意表达式 表达式1和表达式3可以是一个简单的表达式,也可以是逗号表达式,即包含一个以上的简单表达 式,中间用逗号间隔 

    /基本格式

      

     for(int i=0;i<5;i++){
    
            printf("%d	",i);
    }
    
        
    

        //省略格式1,省略表达式1

       int i=0;
    
       for(;i<5;i++){
    
           printf("%d	",i);
    
     )
        
    

    省略格式2,省略表达式3

    int i=0;
    
     for(;i<5;){
    
         printf(“%d	”,i);
    
          i++;
    
        }
    

     

        //省略格式3,省略表达式3

       int i=0;
    
        for(;;){
    
               if (i<5) {
    
               printf("%d	",i);
    
               i++;
    
            }else{
    
    //            //让循环结束
    
               break;
    
          }
       }
    

    for循环的嵌套 

    嵌套循环在一般情况下,只有2层嵌套循环。不会超出3层。 

    pastedGraphic_2.png

    pastedGraphic_3.png 

    break关键字及break语句

    break和continue语句都可以用在循环中,用来跳出循环(结束循环);break语句还可以用 在switch语句中,用来跳出switch语句。 

    1、break语句用法 

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

    注意: 

    // if(表达式)else{ ...... break;......} 

    1)break语句对if-else的条件语句不起作用; 

    2)在多层循环中,一个break语句只向外跳一层。 

    continue 语句(结束本次循环,继续下次循环) 用法 

    continue语句的作用是跳过循环体中剩余的语句而继续下一次。continue语句只用在 for、while、do-while等循环体中,常与if条件语句一起使用,用来加速循环。 

  • 相关阅读:
    BZOJ 2752: [HAOI2012]高速公路(road)
    codevs 1979 第K个数
    洛谷 P2680 运输计划
    hdu 3501 Calculation 2
    POJ 2417 Discrete Logging
    比较数组和字典
    js事件之event.preventDefault()与event.stopPropagation()用法区别
    alert
    js基本类型的包装对象
    js取自定义data属性
  • 原文地址:https://www.cnblogs.com/yilizhijiaotianxiashao-yincaiersanshijianduo/p/4726133.html
Copyright © 2020-2023  润新知