zoukankan      html  css  js  c++  java
  • 黑马程序员__C语言__流程控制__选择结构

    流程控制

    c语言中有3中结构控制程序运行
    1> 顺序结构:默认的流程结构,按照书写的顺序执行每一条语句
    2> 选择结构:对给定的条件进行判断,在根据判断结果来决定来执行哪一段代码
    3> 循环结构:在给定条件成立的情况下,反复执行某一段代码

    1.选择结构

    if语句

    1>if的第一种结构

    if(条件)
    {//条件成立就会执行下面语句
    语句1;
    语句2;
    .......

    }

    例子:

    #include <stdio.h>

    int main ()
    {
    //人数
    int cout = 0;
    if( cout>=50);
    {
    printf("开班!!! ");
    }
    return 0;
    }


    2>if的第二种结构

    if(条件)
    {//条件成立就会执行下面语句
    语句1;
    语句2;
    .......

    }
    eles
    {

    }

    例子:

     1 #include <stdio.h>
     2 
     3 int main ()
     4 {
     5     //人数
     6     int cout = 0;
     7     if( cout>=50);
     8     {
     9         printf("开班!!!
    ");
    10     }
    11     else
    12     {
    13         //条件不成立就会执行下面代码
    14         printf("不开班!!!
    ")
    15     }
    16     return 0;
    17 }
    18         

    3>if的第三种结构


    if(条件1)
    {//条件成立就会执行下面语句
    语句1;
    语句2;
    .......

    }
    else if(条件2)
    {

    }
    else if(条件3)
    {

    }
    else if(条件4)
    {

    }
    else
    {

    }

    例子:

     1 #include <stdio.h>
     2 
     3 int main ()
     4 {
     5     int a = 10;
     6     if (a==10)
     7     {
     8         printf("a==10"
    );
     9     }
    10     else if (a==5)
    11     {
    12         printf("a==5"
    );
    13      }
    14     else if (a==3)
    15     {
    16         printf("a==3"
    );
    17     }
    18     else
    19     {
    20         pintf("a是其他值
    ");
    21     }
    22 }
    23     

    4>if的第四种结构

    if()
    语句1;
    语句2;
    //如果条件成立执行语句1,语句2也会执行,如果条件不成立,语句不执行,后面的还是会执行


    5>if 语句使用注意

    *if条件比较大小时,常量值放在左边,变量放右边。

    *if(); //这个分号不能写,这样会导致条件成立只会执行一个空语句,失去if的作用
    {

    }

    *下面的使用一定要注意

    1 #include <stdio.h>
    2 
    3 int main ()
    4 {
    5     if(10>6)
    6     int a = 5; //这个a的作用域不明确,所以这块代码是错误的
    7     return 0; //如果要在if 后面的语句中定义新的变量,必须用大括号{}
    8 }

    switch语句

    1>语法结构

    switch(数值)
    {
    case 数值1;
    语句1;
    break; // break:退出整个switch语句
    //如果case后面没有break,就会执行后面所有case中的语句,直到遇到bresk为止

    case 数值2;
    语句2;
    break;

    default :
    语句3;
    break;
    }

    2>switch语句使用注意


    *也是关于作用域的问题,在case语句中如果定义一个新的变量,会导致这个变量作用域混乱,系统报错。

    解决方法:在定义新的变量用{},明确变量作用域

    3>if和switch比较

    if语句能完成的功能,switch不一定能够完成

    在有些情况下if语句和switch可以互换

    switch 能完成的语句if都能完成

  • 相关阅读:
    [ASP.NET Core 3框架揭秘] Options[6]: 扩展与定制
    [ASP.NET Core 3框架揭秘] Options[5]: 依赖注入
    [ASP.NET Core 3框架揭秘] Options[4]: Options模型[下篇]
    [ASP.NET Core 3框架揭秘] Options[3]: Options模型[上篇]
    [ASP.NET Core 3框架揭秘] Options[2]: 配置选项的正确使用方式[下篇]
    [ASP.NET Core 3框架揭秘] Options[1]: 配置选项的正确使用方式[上篇]
    [ASP.NET Core 3框架揭秘] 配置[9]:自定义配置源
    ASP.NET Core 3框架揭秘] 配置[8]:多样化的配置源[下篇]
    [ASP.NET Core 3框架揭秘] 配置[7]:多样化的配置源[中篇]
    [ASP.NET Core 3框架揭秘] 配置[6]:多样化的配置源[上篇]
  • 原文地址:https://www.cnblogs.com/jia694600474/p/3975953.html
Copyright © 2011-2022 走看看