switch语句使用

1tch 语句的使用
请用 switch 语句编写这样一个程序:从键盘输入一个成绩,判断该成绩的等级,判断的标准为:
90100:VeryGood(优秀)8089:Good(良好)
7079:Common(一般)6069:Pass(及格)
0~59:NoPass(不及格)其他:Error(有错)

把成绩除以10,case里写10,9,8,7,6,default

该回答通过自己思路及引用到GPTᴼᴾᴱᴺᴬᴵ搜索,得到内容具体如下:
可以使用 switch 语句来实现对输入成绩的等级进行判断。下面是一种可能的实现方式:

#include <stdio.h>

int main() {
    int score;
    printf("请输入成绩:");
    scanf("%d", &score);
    switch (score / 10) {
        case 10:
        case 9:
            printf("成绩等级为:VeryGood(优秀)\n");
            break;
        case 8:
        case 7:
            printf("成绩等级为:Good(良好)\n");
            break;
        case 6:
        case 5:
            printf("成绩等级为:Pass(及格)\n");
            break;
        case 4:
        case 3:
        case 2:
        case 1:
        case 0:
            printf("成绩等级为:NoPass(不及格)\n");
            break;
        default:
            printf("成绩等级为:Error(有错)\n");
            break;
    }
    return 0;
}

在这个程序中,首先从键盘读入一个整数成绩,然后使用 switch 语句根据成绩的值进行判断。由于 switch 语句会根据给定表达式的值,跳转到对应的 case 标签处执行语句,因此我们可以通过将成绩除以 10 来确定其所属的等级区间。在每个 case 标签处,我们输出对应等级的提示信息。如果成绩不在 0~100 的范围内,会执行 default 标签的语句,输出“Error(有错)”的提示信息。最后返回 0 表示程序正常结束。


如果以上回答对您有所帮助,点击一下采纳该答案~谢谢

供参考:

#include <stdio.h>
int main()
{
    int score;
    scanf("%d", &score);
    switch (1 * (score >= 90 && score <= 100) +
            2 * (score >= 80 && score < 90)   +
            3 * (score >= 70 && score < 80)   +
            4 * (score >= 60 && score < 70)   +
            5 * (score >= 0 && score < 60))
    {
    case 1:printf("VeryGood");break;
    case 2:printf("Good");    break;
    case 3:printf("Common");  break;
    case 4:printf("Pass");    break;
    case 5:printf("NoPass");  break;
    default:printf("Error");  break;
    }
    return 0;
}