switch 中case的条件问题!

我想让 CASE 后面的条件为一个区域的,怎么改?
switch (i)
case >40&&<46
大概就这样,但是出错了。 。。

基本的C语言语法问题。
switch()内的表达式必须有一个定值
case后面只能是表达式的一个定值,不能指定范围。
如果想要实现以上
可以使用if(i>40 && i<46)语句。
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-10-09
  基本的C语言语法问题。
switch()内的表达式必须有一个定值
case后面只能是表达式的一个定值,不能指定范围。
如果想要实现以上
可以使用if(i>40 && i<46)语句。

  switch 英[swɪtʃ] 美[swɪtʃ]
  n. 开关; 转换,转换器; 软鞭子; [信] 接线台;
  vt.& vi. 转换; 转变,改变; 关闭电流; 鞭打;
  vt. 转换; (棍棒、鞭子等) 挥动; 迅速转动; 鞭打;
第2个回答  2009-03-31
要这样,先用IF语句,把区间的值转换成一个个具体的点.
比如:
int i;
if(x<=40) i=1;
if(x>40&&x<46) i=2;
......
switch(i)
case ....
...
希望对你有帮助.
第3个回答  2015-09-22
C和C++语言中的switch语句,switch()内的表达式必须有一个定值,case后面必须是常量或常量表达式,它只能是switch表达式的一个取值,不能是取值范围。如果想要实现对取值范围进行判断分支,可以使用if语句,如:if(i>40 && i<46)语句。

case 中用break跳出当前的switch语句,用continue是跳出“本次”分支,开始下一次分支。
第4个回答  2009-03-31
貌似case后面不能为区域,只能为定值,vb的select case 语句倒是可以用范围的,但是c++好像不可以。望高手指正!

switch 中case的条件问题!
基本的C语言语法问题。switch()内的表达式必须有一个定值 case后面只能是表达式的一个定值,不能指定范围。如果想要实现以上 可以使用if(i>40 && i<46)语句。

SWTICH语句case后面只能接一个表达式吗?
SWITCH语句中的case条件限制明确:每个case后面必须跟一个编译期确定的整型常量表达式,作为唯一标签,用于标识不同的分支。这个表达式在编译时必须明确,作为程序中的预设条件。case标签本身并不执行,其作用是标识特定的代码块。可以接零个或多个语句,甚至通过大括号构成复合语句,但并非强制要求。当遇到brea...

switchcase语句用法
C语言的switch条件支持包括char、int、short、long类型,不包括float、double。另外,C99引入了_Bool关键字表示布尔类型,但VS 2010并不支持。在C语言中,switch允许多个case的使用,与Java的实现一致。

关于switch case语句的问题
确实不行。编译器报错(case label does not reduce to an integer constant)如果硬要用switch-case,只能另外设定一个变量b, 当a在[1000,2000]区间里面的时候赋值b=1;if(a<=2000 && a>=1000)b=1;switch(b)case 1: p=p*0.9;case 2: ...;......

switch case条件必须是由小到大排列吗?
switch case语句,是按照表达语句顺序执行的,所以case条件大小无关。

在swⅰtch语句中,case子句可以是条件表达式吗?为什么?
对于C语言来说,switch语句中,每个case子句里面必须是整型常量,不能是表达式(当然也不可以是条件表达式),这是C语言语法的规定,必须按照这个规定编写程序,编译器才能通过。

SWTICH语句case后面只能接一个表达式吗?
1、一个case紧接的条件表达式只能是一个编译期确定的整型常量表达式。case和这个常量表达式组成一个标签,这个表达式是当标号用的,所以必需在编译期确定。2、case标签本身不会被执行。一个case标签后可以接零条或多条语句(可以用大括号组成一条复合语句,但不必要)。遇到break;时控制流跳出switch。3、...

Go语言教程之边写边学:Switch…Case条件语句
Go语言支持类似其他语言(如PHP或Java)中的switch语句,这是一种替代if else结构,使得代码更易读。switch语句让你能根据变量状态选择执行不同代码块。考虑以下示例,展示特定日期对应的不同消息。若未找到匹配项,可使用default语句。case可以有多个条件,适用于处理多个相似情况的代码块。使用fallthrough关键...

希望大神帮我解答关于switch( ){case :}的一些问题。
因为先执行i=1,case 1后空,无break语句,所以就一直做下去,两次k++后,k=2第二题 题目2#include<stdio.h>int main(){int i,m=0;for(i=0;i<5;i++) {switch(i) {case 0: case 1:m++; case 3:m++; case 4:m--;break;}}printf("%d\\n",m);return 0;} 根据i...

js中switch语句中case值是表示一个范围的吗?
1、打开浏览器的控制台,在控制台中定义一个函数,函数中使用switch命令,case后面的条件是一个范围:2、调用函数,函数的参数值为“90”,由于“90”大于“80”,所以函数返回“优秀”:3、调用函数,函数的参数值为“59”,由于“59”大于“0”,所以函数返回“不及格”:

相似回答