泡泡·↗忧伤 发表于 2013-11-4 20:20:48

难道真的是千古难题吗?!!!!

本帖最后由 泡泡·↗忧伤 于 2013-11-4 20:25 编辑

先说下题 是
0<=a<60         时输出D
60<=a<80   时输出C
80<=a<90   时输出B
90<=a<=100   时输出A
必须用 switch语句写 ,    可是我写的怎么不行呀!   求助!!!谢谢了
上代码:
#include <stdio.h>
int main()

{
int a,b;
scanf("%d",&a);
b = a/ 10;   
switch(b)
{
    case '0':
    case '1':
    case '2':
    case '3':
    case '4':
    case '5':
      
            printf("D\n");
      
    break;
    case '6':
    case '7':
      
      printf("C\n");
      
    break;
    case '8':
      printf("B\n");
    break;
    case '9':
    case '10':
      printf("A\n");
    break;
}
return 0;
}




没有错误 那肯定是逻辑错误了。。。





输上一个数 回车后就会退出。   不用给我答案 可以给我说下思路 就行 或者指出下那里错了

我就无奈了本来   else if   语句很好写出来可非的用 switch这个又不太精通!!   麻烦大家了..


mr.yycao 发表于 2013-11-4 21:06:28

把单引号去了就OK

mr.yycao 发表于 2013-11-4 21:10:23

对了,忘说了,是case后面的单引号

snailqiu 发表于 2013-11-4 21:13:15

把单引号去掉。你判断的是它是不是一个整数,而不是一个字符

l万lin 发表于 2013-11-4 21:19:56

本帖最后由 l万lin 于 2013-11-4 21:21 编辑

楼上!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

l万lin 发表于 2013-11-4 21:20:31

本帖最后由 l万lin 于 2013-11-4 21:23 编辑

小川 发表于 2013-11-4 22:17:27

楼上正解!!!!!!!!!!!!!!!!!!!

泡泡·↗忧伤 发表于 2013-11-4 22:31:12

mr.yycao 发表于 2013-11-4 21:10 static/image/common/back.gif
对了,忘说了,是case后面的单引号

谢谢谢谢

泡泡·↗忧伤 发表于 2013-11-4 22:31:49

l万lin 发表于 2013-11-4 21:19 static/image/common/back.gif
楼上!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

谢谢谢谢

泡泡·↗忧伤 发表于 2013-11-4 22:32:48

小川 发表于 2013-11-4 22:17 static/image/common/back.gif
楼上正解!!!!!!!!!!!!!!!!!!!

谢谢谢谢

CL0419 发表于 2013-11-5 16:53:36

单引号去掉,就可以了,很简单,说明你基础不怎么好,粗心大意造成的,编程需要思维并且更需要细心。
页: [1]
查看完整版本: 难道真的是千古难题吗?!!!!