新手求助Switch函数
#include <stdio.h>int main()
{
float a,b;
printf("请输入两个数(用空格隔开):");
scanf("%f %f",&a,&b) ;
switch(a&&b !=0)
{
case a > b: printf("%f %f\n",a,b);
break;
case a < b: printf("%f %f\n",b,a);
break;
default: printf("两个数字相同。\n");
break;
}
return 0;
}
运行报错,跪求指导{:10_266:} switch不能这么玩,楼主想当然了,建议百度 case不是这么写的 本帖最后由 zzxhh628 于 2022-4-18 00:37 编辑
switch不是函数,它是个C\C++的关键字,case后面只能是常量,不可以是范围、变量或者其他表达式。你代码中的写法不正确,也就是说switch根本不能那么用,你case后面那个表达式不是一个常量,所以无法编译。 switch(a&&b !=0)
{
case a > b: printf("%f %f\n",a,b); //case 后面接常量,不能接表达式,变量。a>b是个表达式,程序肯定会报错的
break;
case a < b: printf("%f %f\n",b,a);
break;
default: printf("两个数字相同。\n");
break;
} syntax不对,用 if 写更简单。
页:
[1]