zoukankan      html  css  js  c++  java
  • 编程基础C——switch语句个人总结及应用实例和要注意的事项

    一般格式:
    switch(表达式,表达式只能是整形结果或者字符)
    {
    case   常量1:语句1;break;
    case   常量2:语句2;break;
    case   常量3:语句3;break;
       .           .           .             .
       .           .           .             .
    case   常量n:语句n;break;
    default:  语句n+1;
    }
     
    注意:
    switch使用时,程序会进入满足条件的case然后一直往下运行,直到遇到第一个break,才会跳出分支语句。
     
    例1:输入 两个整数,并且根据输入的运算符号,计算两个数的结果。
     
    #include <stdio.h>  //头文件

    int main(int argc, const char * argv[])
    {
        int a,b;
        char c;
        printf("请输入两个整数:");
        scanf("%d%d",&a,&b);
        printf("请输入运算符:");
        scanf("%c%c",&c,&c);
        switch (c) {
            case '+':  // 运算符号的判断
                printf("a+b=%d",a+b);
                break;    //遇到第一个break跳出循环,以下的循环体语句都不被执行;
            case '-':
                printf("a-b=%d",a-b);
                break;
            case '*':
                printf("a*b=%d",a*b);
            case '/':
                printf("a/b=%d",a/b);
                break;
            default:printf("输入的字符有误");      //如果以上的case语句都未被执行则执行default;
             
        }
        return 0;
    }
     
    例2:输入星期几,判断是单号还是双号可行。
     
    #include <stdio.h>

    int main(int argc, const char * argv[])
    {
        int a;
        printf("请输入星期:");
        scanf("%d",&a);
        switch (a) {
            case 1:    //没有break继续往下判断;
            case 3:
            case 5:
            case 7:
                printf("单号,可行");
                break;
            case 2:
            case 4:
            case 6:
                printf("双号,可行");
                break;
               
            default:printf("输入的星期有误:");
              
        }
        return 0;
       
       }
     
    第二种方法:
     
    #include <stdio.h>
    int main(int argc, const char * argv[])
    {
        int a;
        printf("请输入星期:");
        scanf("%d",&a);
        if (a<=7)
        {
            switch (a%2) {
            case 1:
                printf("单号,可行");
                break;
            case 0:
                 printf("双号,可行");
                break;
            }
        } else
             printf("输入的星期有误:");
          return 0;
       
       }
     switch使用注意事项:
    (1)所有的switch case语句,都可以用if分支进行实现,但是不是所有的if语句都能switch case实现。
    (2)case后的数值不能是区间型,只能是固定的值。
    (3)switch case和if是可以相互嵌套。
    (4)如果在case定义了新的变量,需要用大括号将整个case分支括起来。
    感谢您的访问! 若对您有帮助或有兴趣请关注博客:http://www.cnblogs.com/Rong-Shengcom/
  • 相关阅读:
    POJ 1141 括号匹配 DP
    881. Boats to Save People
    870. Advantage Shuffle
    874. Walking Robot Simulation
    文件操作
    861. Score After Flipping Matrix
    860. Lemonade Change
    842. Split Array into Fibonacci Sequence
    765. Couples Holding Hands
    763. Partition Labels
  • 原文地址:https://www.cnblogs.com/Rong-Shengcom/p/4931108.html
Copyright © 2011-2022 走看看