有关Switch语句的问题

img


如图所示,为什么我运行出来长这样

img


Switch语句的case后面是只能跟字符和数字吗?感谢回答,谢谢!

img


我帮你改装一下


#include<stdio.h>

int main()
{
    int score = 0;
    scanf("%d",&score);

    if(score >= 0 && score <= 100)
    {
        switch(score/10)//90~100的数字 除以10就是9或者10
        {
            case 10:
            case 9:
                printf("A\n");
                break;
            case 8:
                printf("B\n");
                break;
            case 7:
                printf("C\n");
                break;
            case 6:
                printf("D\n");
                break;
            default:
                printf("E\n");
        }
    }
    return 0;
}

你这代码写的没眼看
先从例题开始温习,不要瞎写
你现在的问题有
1.搞不清数据类型,什么是int,什么是字符
2.你不清楚字符里应该写什么
3.整个C语言的语法规则你完全不知道
最后,不会就看书,别凭感觉瞎写,写出自己都看不懂的代码,它大概率是没法运行的

switch case后面只能跟常量而且每个case后面的常量都要不同 你那个'90~100'没这么用的 ''里面只能是单个字符