我的代码那里错了
#include <stdio.h>void main()
{
double s,p,w,d,f;
printf("输入运费,货物重量,距离");
scanf("%f%f%f",&p,&w,&s);
switch(s){
case '1':
d=2;
break;
}
printf("%d",d);
}
显示: error C2050: switch expression not integral
执行 cl.exe 时出错.
好吧不能是double类型的 switch只能是int,char,byte,long,枚举类型的,话说楼主自问自答很嗨啊 fireofsun 发表于 2014-11-1 14:35
switch只能是int,char,byte,long,枚举类型的,话说楼主自问自答很嗨啊
.......是吗 switch() 里只能是整型数据,不能是浮点型,可以是long, int, char等等
你这里可以使用类型转换,如 switch ((long)s) 风之残月 发表于 2014-11-8 21:17
switch() 里只能是整型数据,不能是浮点型,可以是long, int, char等等
你这里可以使用类型转换,如 switc ...
除了上面的错误,还有就是你使用的是长双精度%f应改为%lf
页:
[1]