若有以下定义:float x; int a,b; 则正确的switch 语句是
A) switch(x) B) switch(x)
{ case 1.0:printf("*\n"); { case 1,2:printf("*\n");
case 2:printf("**\n") case 3:printf("**\n");
} }
C) switch(a+b) D) switch(a-b);
{ case 1:printf("*\n") ; { case 1:printf("*\n");
case 2:printf("**n"); case 2:printf("**\n");
} 重点 解释C为什么是错的
人气:420 ℃ 时间:2019-09-29 01:34:35
解答
话说只有C是正确的吧
A和B使用了非整形表达式,switch里只能用整形表达式,字符会被转换成整形,case里只能用常数,并且各异
而D的switch后面有个分号 switch(a-b); 话说 只有D是正确的 C好象不正确D只比多了个\ 所以你说的如果对C也错\是转义字符,在字符串里用, \n被解释为换行,没有\的n只是字母d的你可以到编译器上试一试,switch那行后面的分号';' 把switch语句结束了而case就不在switch里了你的回答非常正确谢谢我看错了 嘿嘿那小分号 没看见
推荐
- 若有定义:float x=1.5;int a=1,b=3,c=2;,则正确的switch语句是 ( )
- 若有以下定义,则正确的赋值语句是( ) int a,b; float x; A.a=1,b=2 B.b++; C.a=b=5 D.b=int (x)
- 一些科学家到一个海岛上考察,发现岛上生长的昆虫大多无翅或残翅,之后得知岛上经常刮大风,请你用达尔文的
- 已知甲数的绝对值是乙数绝对值的3倍,且在数轴上表示这两数的点位于原点的两侧,两点之间的距离为8,求这两个数;若数轴上表示这两数的点位于原点同侧呢?
- 刀 英文怎么写
- 甲、乙、丙三人沿着湖边散步同时从湖边一固定点出发.甲按顺时针方向行走.乙与丙按逆时针方向行走.甲第
- 有一个质量为50g的鸡蛋,体积为45cm3,当它完全浸没在水中时受到的浮力是多大
- 关于意志品质发展的英文文章
猜你喜欢