• 运算符与分支结构


    运算符

      赋值运算符

      算术运算符

      关系运算符

      逻辑运算符

      位运算符

      sizeof运算符

    一 算术运算符

      1 一元运算符:++,--

    int main()
    {
        int a = 5;
        int b = a++;
        printf("b = %d
    ",b);
        printf("a = %d",a);
        return 0;
    }

      输出:

    b = 5
    a = 6
    Process returned 0 (0x0)   execution time : 0.108 s

      2 二元运算符:+,-,*,/,%

      3 三元运算符:

      4 复合运算符

    int main()
    {
        double a = 2.3;
        double b = 1.8;
        printf("%.2lf / %.2lf = %.2lf",a,b,a/b);
        return 0;
    }

      输出:

    2.30 / 1.80 = 1.28
    Process returned 0 (0x0)   execution time : 0.112 s

    二 关系运算符

      >,<

      >=,<=

      ==,!=

      关系运算符可以比价大小,高低,长短

    int main()
    {
        int a = 5;
        int b = 6;
    
        printf("%d
    ",5>6);
    
        return 0;
    }

      输出;

    0
    
    Process returned 0 (0x0)   execution time : 0.121 s

      在C语言中,0 表示 假,1(非0)表示真。

    三 逻辑运算符

      && 且           两个条件同时为真时,结果为真

      ||    或           两个条件有一个为真,结果为真

      ! 取反         条件为真时,结果为假。条件为假时,结果为真。

    四 位运算符

      &         按位与  

      |           按位或

      ~          按位非

      ^           按位异或

      <<         左移

      >>         右移

      >>>        无符号右移

    五  sizeof 运算符

      使用sizeof运算符可以获得数据类型占用内存空间的大小。

      参数可以是类型,也可以是某个数值。

    int main()
    {
        printf("int %d
    ",sizeof(int));
        printf("float %d
    ",sizeof(2.3f));
        printf("double %d",sizeof(2.3));
    }

      输出:

    int 4
    float 4
    double 8
    Process returned 0 (0x0)   execution time : 0.111 s

    六 算术运算符的优先级

      () sizeof  ++  --

      !

      算术运算符

      关系运算符

      &&

      ||

      赋值运算符

      

      单目运算符包括 !,~, ++, --, sizeof,优先级最高

      优先级最低的是赋值运算符

      可以通过()控制表达式的运算顺序,()优先级最高

      从右到左结合性的只有赋值运算符,三目运算符,和单目运算符

      算术运算符 > 关系运算符 > 逻辑运算符

    七  if语句

      (part 1 )

        注意格式,和python不太一样。

    int main()
    {
        if (条件为真)
        {
            代码1
        }
        else
        {
            代码2
        }
    
    }

     

     示例:

    #include <stdio.h>s
    #include <stdlib.h>
    
    int main()
    {
        if (100>90)
        {
            printf("100 big");
        }
        else
        {
            printf("90 big");
        }
    
    }

      输出:

    100 big
    Process returned 0 (0x0)   execution time : 0.181 s

      (part 2 )多重 if 结构

        格式

    int main()
    {
        if (条件1)
        {
           代码1
        }
        else if (条件2)
        {
            代码2
        }
        else
        {
            代码3
        }
    }

    八  switch结构

      格式

    #include <stdio.h>s
    #include <stdlib.h>
    
    int main()
    {
        switch(表达式){
            case 常量1:
                    语句1;
                    break;
            case 常量2:
                    语句2;
                    break;
            ......
            default:
                语句;
        }
    }

      注意点

        break 跳出switch结构

        switch 后面的 表达式只能是整型或字符型

        case 后常量表达式的值不能相同

        case后允许多条语句,不需要大括号

        case 和 default 子句的先后顺序可以自动变动

        default 子句可以省略  

      

      示例

    int main()
    {
        int mouth;
        printf("input the month:");
        scanf("%d",&mouth);
        switch (mouth)
        {
        case 1:
            printf("31 days
    ");
            printf("1 month");
            break;
        case 2:
            printf("2 month
    ");
            printf("28 days");
            break;
        case 3:
            printf("3 month
    ");
            printf("31 days");
            break;
        default:
            printf("unsupportable!");
        }
    }

      

    九  switch 与 多重 if 对比

      相同点

        都是用来处理多分支条件的结构

      不同点

        switch:等值条件判断 -- 条件是有限个的时候(杀鸡刀)

        多重 if :判断某个连续区间的情况(杀牛刀)

  • 相关阅读:
    mongoDB安装配置
    linux-批量修改目录下后缀shell
    备份mysql的shell
    mysql_DML_索引、视图
    mysql_存储过程
    mysql_备份_mysqldump
    mysql_DCL_grant/revoke
    mysql_DML_select_子查询
    mysql_DML_select_union
    mysql_DML_select_聚合join
  • 原文地址:https://www.cnblogs.com/654321cc/p/9236693.html
Copyright © 2020-2023  润新知