难道真的是千古难题吗?!!!!
本帖最后由 泡泡·↗忧伤 于 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这个又不太精通!! 麻烦大家了..
把单引号去了就OK 对了,忘说了,是case后面的单引号 把单引号去掉。你判断的是它是不是一个整数,而不是一个字符 本帖最后由 l万lin 于 2013-11-4 21:21 编辑
楼上!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 本帖最后由 l万lin 于 2013-11-4 21:23 编辑
楼上正解!!!!!!!!!!!!!!!!!!! mr.yycao 发表于 2013-11-4 21:10 static/image/common/back.gif
对了,忘说了,是case后面的单引号
谢谢谢谢 l万lin 发表于 2013-11-4 21:19 static/image/common/back.gif
楼上!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
谢谢谢谢 小川 发表于 2013-11-4 22:17 static/image/common/back.gif
楼上正解!!!!!!!!!!!!!!!!!!!
谢谢谢谢 单引号去掉,就可以了,很简单,说明你基础不怎么好,粗心大意造成的,编程需要思维并且更需要细心。
页:
[1]