利用C语言判断输入数据所在等级(同时含有if语句与switch语句)

利用C语言判断输入数据所在等级(同时含有if语句与switch语句)

题目:

  输入学生的百分制成绩(0~100的整数),输出对应的成绩等级(A~E)。

  对应规则如下:

  [90,100]:等级 A

  [80,90):等级 B

  [70,80):等级 C

  [60,70):等级 D

  [0,60):等级 E

具体要求:

  (1)输入,输出要有提示信息,输入成绩后要检查数据的结合性,如果输入的成绩不是0~100的数,则输出“输入错误!”。程序运行结果示例如下:

      请输入百分制成绩:86

      成绩等级: B

  (2)分别使用嵌套的if语句和switch语句实现多分支选择

  (3)分别输入109,59,60,70,80,90,100和其他整数,对程序进行测试。

Tip:

  注意定义变量使用的语句(int,double,float等)

  #define _CRT_SECURE_NO_WARNINGS 1与scanf_s可以二选一在这里面

代码如下:

  先用if语句根据用户输入的数据,进行判断输入对应的数字,再根据数字对应输出成绩等级其实本人认为,这个题可以用if语句直接解决,有效的节省空间,但是不知道怎么了,在写代码的时候想if语句和switch语句一起使用,就用了现在的结果,还应该有最优解,欢迎斧正!

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
main()
{
    int  k, j;
    k = 0;
    printf("请输入百分制成绩:");
    scanf_s("%d", &j);
    if (j <= 100 && j >= 90)
    {
        k = 1;
    }
    else if (j < 90 && j >= 80)
    {
        k = 2;
    }
    else if (j < 80 && j >= 70)
    {
        k = 3;
    }
    else if (j < 70 && j >= 60)
    {
        k = 4;
    }
    else if (j < 60 && j >= 0)
    {
        k = 5;
    }
    else
    {
        printf("	输入错误!
");
    }

    switch (k)
    {
    case 1:printf("	成绩等级:A
"); break;
    case 2:printf("	成绩等级:B
"); break;
    case 3:printf("	成绩等级:C
"); break;
    case 4:printf("	成绩等级:D
"); break;
    case 5:printf("	成绩等级:E
"); break;
    }
        printf("欢迎使用李同学所写的代码,希望能给到你一些帮助!");
}
hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » 利用C语言判断输入数据所在等级(同时含有if语句与switch语句)