C语言,这个错哪里了? 50
2024-11-20 广告
1、switch括号里是表达式或整数或字符(字符在内存中也是整形数ASCII码)。
2、case后面要跟整形常量,包括字符和枚举常量。
如非要用switch,可改成如下代码:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int x;
printf("请输入分数:");
scanf("%d",&x);
switch(x/10)// switch(表达式):表达式那里也可以写整形或字符,但不能是浮点数
{
case 9:printf("A\n");break;//case后面是整型常量(int,char,enum常量)
case 8:printf("B\n");break;
case 7:printf("C\n");break;
case 6:printf("D\n");break;
case 5:printf("E\n");break;
default:printf("请输入正确的分数:");
}
system("pause");
return 0;
}
//ps:条件判断可用if,话说X>=60和x<=60区间重复了。
//另外你在default中提示再次输入,但程序后面直接结束了,想连续执行,至少外围再套个循环。