【C疯狂的教材】(四)C语言分支语句

 1、程序的结构

 

    程序默认从上到下顺序运行(顺序结构)

   

    程序的结构:顺序结构、分支结构、循环结构

 

 2if分支语句

 

    程序运行的过程中能够有多个选择

    格式:

         if(表达式){

 

              语句块;

         }

 

         ......

 

     进行表达式的求值:假设表达式的值为非0(真) 会运行语句块

                                  0 (假) 不会运行语句块,

 

 3if分支语句的几种形式

 

    1)最简单的,要不运行,要不是不运行

 

     if(表达式){

     

     语句块;

 

     }

 

 

 

    2)if.....else......

 

     if(表达式){

 

        语句块1

 

     }else{

 

        语句块2

     }

 

     进行表达式的求值:假设表达式的值为(真) 会运行语句块1

                               0 (假) 会运行语句块2

 

     注意:语句块1和语句2仅仅可能被运行一次

 

  

     3if...else...的嵌套问题

 

     if(表达式1){

 

         if(表达式2){    //表达式1值为1,而且表达式2值为1

 

             语句块1

 

         }else{

            语句块2    //表达式1值为1。可是表达式2的值为0

         }

 

     }else{

 

        语句块3        //表达式10的时候

 

     }

 

 

 

    4if..... else if ......else....

 

     if(表达式1){

 

        语句块1;  //表达式1为真

 

     }else if(表达式2){

       

        语句块2;  //当表达式1不成立,可是表达式2成立

 

     }else{

 

         语句块3 //当表达式1和表达式2都不成立的时候

     }

 

 4if注意点

 

    1if(1)if(-1)if(a=5)  永真式   if(0) 永假

    2if(表达式);  表示推断完了什么都不做

    3) if(表达式) return 0; //程序退出。代码不会再往下运行了

    4) if(表达式){int num=10;}  printf("%d",num);(错误的)

    5if(表达式) int num=10; (作用域紊乱)

 

 

 5switch分支语句

 

    也是用于条件推断。当表达是的结果有多种情况,用switch比較方便一些

 

    格式:

 

       switch(表达式){

 

          case 整型常量或者字符常量: 语句;

           .....

 

 

          default:

                //假设上面的条件都不满足。运行default

 

       }

 

 

      计算表达式的值,用这个值和case后的常量进行比較,假设这个值等于了某个常量值,会运行case相应的分支语句。遇到break;才结束。假设没有遇到break。程序一直会往下运行。直到switch语句结束

 

 6switch的注意点

  

    1switch(表达式)    表达式:返回值是整型

    2case 常量        常量:必须是整型的 。不能是flaoat    cast 2.3:

                       能够放常量表达式。可是不同意:a+3

    3) 作用域的问题

 

       case 3: {

                 int num=-1;

             }

       case 4:printf("%d ",num); 不同意的

 

    4case分之语句能够有多句。能够使用大括号,也能够不使用

    5)作用域紊乱的问题:  case 4:int a=4; (不正确)

版权声明:本文博主原创文章,博客,未经同意不得转载。

原文地址:https://www.cnblogs.com/bhlsheji/p/4883102.html