若有定义;float x=1.5;int a=1,b=3,c=2:则正确的switch语句为( )A switch(x) { case 1.0;printf(“*\n");case 2.0:printf("**\n");}B switch((int) x);{ case 1:printf("*\n");case 2:printf("**\n")}C switch(a+b){ case 1:printf("*\n");case 2
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/07 21:04:13
若有定义;float x=1.5;int a=1,b=3,c=2:则正确的switch语句为( )A switch(x) { case 1.0;printf(“*\n");case 2.0:printf("**\n");}B switch((int) x);{ case 1:printf("*\n");case 2:printf("**\n")}C switch(a+b){ case 1:printf("*\n");case 2
若有定义;float x=1.5;int a=1,b=3,c=2:则正确的switch语句为( )
A switch(x)
{ case 1.0;printf(“*\n");
case 2.0:printf("**\n");}
B switch((int) x);
{ case 1:printf("*\n");
case 2:printf("**\n")}
C switch(a+b)
{ case 1:printf("*\n");
case 2+1:printf("**\n");}
D switch(a+b)
{ case 1:printf("*\n");
case 2:printf("**\n");}
若有定义;float x=1.5;int a=1,b=3,c=2:则正确的switch语句为( )A switch(x) { case 1.0;printf(“*\n");case 2.0:printf("**\n");}B switch((int) x);{ case 1:printf("*\n");case 2:printf("**\n")}C switch(a+b){ case 1:printf("*\n");case 2
A的问题是:switch只能接受integer类型变量.如果按照A的写法,那么编译器大概会提示你switch quantity not an integer.
B的问题是:switch后面多加了;号,在编译器看来,会认为case条件没有与一个switch关联.
CD从语法角度看上去是没有什么问题,只不过就是程序运行的时候,因为a+b的值都不在case里,所以不会有任何显示.
个人觉得如果题目里都能加上default的处理的话,就更完善一些哈.