• C语言----多路分支(进阶篇十九)


     

      if多路分支

        格式:

          if(表达式)

          {

            若干语句

            …

          }

          else if(表达式)

          {

            若干语句

            …

          }

          else if(表达式)

          {

            若干语句

            …

          }

          else

          {

            若干语句

            …

          }

        程序1

          学校将考试成绩分为3档,0-59分为不及格,60-89分为及格,90-100分为优秀。现在请编一程序,由老师输入一个学生成绩,计算机判断这个成绩在哪一档,并在屏幕上显示。

             

    // 19-1成绩条件输出.c
    
    /*学校将考试成绩分为3档,
    0 - 59分为不及格,60 - 89分为及格,
    90 - 100分为优秀。现在请编一程序,
    由老师输入一个学生成绩,计算机判断这个成绩在哪一档,并在屏幕上显示*/
    #include <stdio.h>
    main()
    {
        float grade;
        scanf_s("%f", &grade);
        if (grade > 0 && grade < 60) printf("没到60分,不及格,加油啦...
    ");
        else if (grade > 59 && grade < 90) printf("已及格,继续努力...
    ");
        else if (grade > 89 && grade <= 100) printf("优秀,歇歇吧给后面的学生一个机会!
    ");
        else   printf("%g分数有误!重新打开输入
    ", grade);
    }

      switch语句和break语句

        格式:

          switch (表达式)

          {

            case 常量表达式1:语句1

            case 常量表达式2:语句2

            ……

            case 常量表达式n:语句n

            default:语句n+1;

          }

     

        程序2

          写一个程序供老师查询A、B、C三档分数各在什么范围

            

    // 19-2switch语句查询.c
    //写一个程序供老师查询A、B、C三档分数各在什么范围
    #include <stdio.h>
    
    main()
    {
        char a;
        scanf_s("%c", &a);
        switch (a)
        {
        case 'A':
            printf("90-100为A
    ");
            break;
        case 'B':
            printf("60-89为B
    ");
            break;
        case 'C':
            printf("0-59为C
    ");
            break;
        default:
            printf("输入格式错误
    ");
        }
    }

        ※switch语句出现嵌套时,break只会跳出本层switch

        ※default相当于if中的else

        ※break不对if语句起作用。

        ※case如果后面没有break,程序会继续向下执行,而不会跳出switch,如:

          int a=1;

          switch(a)

          {

            case 1:printf(“1 ”);

            case 2:printf(“2 ”);

          }

          这时1和2都会打印在屏幕上。

        ※case后面只能是常量表达式,不能是变量,如:

          case 1+2:

          case ‘a’:

          case 1<2:

            都是合法的,而

          switch(a)

          {

            case a:

            case a<5:

          }

          因为a是变量,两条语句都不合法

        程序3

          投票统计

    // 19-3投票统计.c
    //
    
    #include <stdio.h>
    
    main()
    {
        int xjl = 0, zzy = 0, nn = 0;
        int symbol = 0, input; 
    
        do
        {
            printf("请输入喜欢的明星:1、徐静蕾  2、周子怡  3、妮妮:");
            scanf_s("%d", &input);
            switch (input)
            {
            case 1:xjl++; break;
            case 2:zzy++; break;
            case 3:nn++; break;
            default:symbol = 1;
                break;
            }
            if (symbol == 1)break;
        } while (1);
    
        printf("投票结果
    徐静蕾:%d
    周子怡:%d
    妮妮:%d
    ", xjl, zzy, nn);
    
    }
  • 相关阅读:
    Android命名规范(重点讲解:包名)
    ADT中创建Android的Activity
    Android页面切换
    js技巧
    记一次查询超时的解决方案The timeout period elapsed......
    Timeout expired 超时时间已到. 达到了最大池大小 错误及Max Pool Size设置
    SQL索引详解
    php 微信公众号接入支付宝支付
    【MVC】关于Action返回结果类型的事儿(上)
    H5网站接入支付宝的支付接口
  • 原文地址:https://www.cnblogs.com/httpcc/p/15459025.html
Copyright © 2020-2023  润新知