首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为什么当我输入正确的输入时,switch语句会被忽略

当输入正确的输入时,switch语句被忽略的原因可能有以下几种情况:

  1. 输入的值没有匹配到任何一个case:switch语句中的case语句用于匹配输入值,如果输入的值没有与任何一个case匹配,那么switch语句会被忽略,程序会继续执行switch语句后面的代码。
  2. 没有使用break语句:在每个case语句块的末尾,应该使用break语句来跳出switch语句,否则程序会继续执行下一个case语句块,直到遇到break语句或者switch语句结束。如果没有使用break语句,那么即使匹配到了正确的输入,后面的case语句块也会被执行,导致switch语句被忽略。
  3. 输入的值类型不匹配:switch语句中的case语句用于匹配输入值的类型和值,如果输入的值类型与case语句中的类型不匹配,那么switch语句会被忽略。例如,输入的是字符串类型,而case语句中的类型是整数类型,就无法匹配成功。
  4. 输入的值没有进入switch语句:在程序中,如果输入的值没有被正确传递给switch语句,那么switch语句会被忽略。可能是因为输入的值没有被正确赋值给switch语句的变量,或者输入的值没有经过预处理就直接跳过了switch语句。

总结起来,当输入正确的输入时,switch语句会被忽略的原因可能是没有匹配到任何一个case、没有使用break语句、输入的值类型不匹配或者输入的值没有进入switch语句。在编写代码时,需要注意这些情况,确保switch语句能够正确执行。

相关搜索:当我正在更新的属性是用户输入时,如何编写update语句?如果输入满足要求的条件,为什么忽略if语句?为什么Typescript不能根据枚举switch语句推断出正确的类型?当我将pandas dataframe用作多处理函数的输入时,为什么它没有改变当我粘贴搜索输入时,为什么Jquery中的Select2会显示禁用的选项?为什么if-else语句没有给我正确的提示,即使我输入了正确的信息?为什么当我构建二叉树时,二叉树的重复值的节点会被忽略?为什么当我增加输入元素按钮的字体大小时不能正确对齐?为什么提交表单时我的网站子url不起作用,但当我手动输入时却起作用?当我试图给我的程序提供3个输入时,它需要4个才能正常运行。为什么会这样呢?当我输入一个空字符串('nothing here')时,为什么它忽略了我的while条件?C-当我返回正确答案时,我的代码没有打印[第一个] IF语句-为什么?为什么当输入的零钱是2.2时,输出显示所需的最小硬币数的正确答案,而当我输入4.2时,输出显示错误的输出?为什么我会得到这个错误?机器人应该用ID=899279907216031744来分配角色,当我给出这种类型的输入时,我得到了错误为什么if-else语句中的条件永远不会满足,即使我输入了与列表中的字符串匹配的正确字符串?为什么我的代码会说System.FormatException:“输入字符串的格式不正确。”当我将文本框留空并单击提交按钮时?
相关搜索:
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

【C语言】“分⽀与循环第一章:开启创新之门,探索无尽可能性第一篇章“

VS2022上他其实也会自动调整; 不管if语句条件真假,都会被执⾏。...,都不会被执⾏。...看结果: 但是当你去运⾏代码,输出结果是:啥都不输出来。 哎这是为什么鸭? 这是悬空else问题,如果有多个if匹配。...原因是switch语句是按分支运行,只有switch语句中使用break才能跳出switch语句,如果一个分支case语句后没有break语句,代码会继续走,不会停,又可能执行其他case语句代码...2.3 switch语句default 在使⽤switch语句时候,使⽤比如switch 后表达式中值⽆法匹 配代码中case 语句时候,这时候要不就不做处理,要不就得在 switch

12110
  • C语言循环与分支不会用?来看看!

    break作用就是永久终止循环,只要brake执行,break外第一层循环就不会被执行,以后若想在某种条件下终止循环,则可以使用break来完成,达到我们想要效果。...3.嵌套if 在if-else中,else 可以与另⼀个 if 语句连⽤,构成多重判断。 ⽐如:要求⼊⼀个整数,判断整数是0,还是正数或者负数。...3.2.1 if语句Switch语句对比 练习:输入任意一个整数值,计算除3后余数 用if语句完成效果,如下: #include int main() { int n =...所以在switch中break语句是非常非常重要,能体现真正分支效果。...3.2.3 switch语句default 在上述代码中,如果输入值不是1~7,那则不会进行打印,为了解决这一情况,这就需要用到default; #include int main

    5210

    分支和循环(2)

    5.1 if语句switch语句对⽐ 练习:⼊任意⼀个整数值,计算除3之后余数  如果使⽤if语句完成,如下: 如果使⽤switch语句改写,就可以是这样: 上述代码中,我们要注意点有:...我们发现,7除以3本来余数是1,但是我们发现程序运⾏结果多了⼀⾏“余数是2”打印。 这是为什么呢?...,我们发现应该根据实际情况,来在代码中觉得是否使⽤ break ,或者在哪⾥使⽤ break ,才能正确完成实际需求。...5.3 switch语句default 在使⽤ switch 语句时候,我们经常可能遇到⼀种情况,⽐如 switch表达式中值⽆法匹 配代码中 case 语句时候,这时候要不就不做处理...6: case 7: printf("休息⽇\n"); break; default: printf("⼊错误\n"); break; } return 0; } 5.4 switch语句case

    5810

    【C语言篇】分支语句详解(超详细)

    switch语句 除了 if 语句外,C语⾔还提供了 switch 语句来实现分⽀结构。 switch 语句是⼀种特殊形式if...else 结构,⽤于判断条件有多个结果情况。...注: switch expression 必须是整型表达式 case 后值,必须是整形常量表达式 if语句switch语句对比 练习:⼊任意⼀个整数值,计算除3之后余数 如果使⽤if语句完成...这是为什么呢?...,我们发现应该根据实际情况,来在代码中觉得是否使⽤ break ,或者在哪⾥使用break ,才能正确完成实际需求。...switch语句default 在使⽤ switch语句时候,我们经常可能遇到⼀种情况,⽐如 switch表达式中值⽆法匹配代码中 case 语句时候,这时候要不就不做处理,要不就得在

    13210

    c语言基础输入输出

    *lf", 5, 2, 3.145); 运行结果为“ 3.15” 输入–scanf scanf() 函数⽤于读取用户键盘⼊。 程序运行到这个语句时,会停下来,等待用户从键盘⼊。...用户输入数据、按下回车键后, scanf() 就会处理用户⼊,将其存入变量。 它原型定义在头文件 stdio.h 。 scanf() 语法跟 printf() 类似。...解读用户输入时,会从上一次解读遗留第一个字符开始,直到读完缓存,或者遇到第一个不符合条件字符为止。...%c占位符是一个不会自动跳过前面的空格占位符,如 解决这个问题,可以在%c前加上一个空格解决 在进行输入时,可以按ctrl+z强行停止读取,使代码向下进行 赋值忽略符 在一些情况下,不清楚输入具体格式...,就可以使用赋值忽略符 scanf("%d%*c%d%*c%d", & year, &month, &day); 上面示例中,%c 就是在占位符百分号后面,加入了赋值忽略符,表示这个占位符没有对应变量

    10610

    C语言分支和循环语句

    利用if...else...语句,语法形式如下: if(表达式) 语句1 else 语句2 eg:输入一个整数,判断是奇数还是偶数 #include int main()...原因是 switch 语句也是分⽀效果,只有在 switch 语句中使⽤ break 才能在跳出 switch 语 句,如果某⼀个 case 语句后边没有 break 语句,代码会继续玩下执⾏,有可能执...⾏其他 case 语句代码,直到遇到 break 语句或者 switch 语句结束。...⼊1-5,输出是“⼯作⽇”; 2.⼊6-7,输出“休息⽇” #include int main() { int day = 0; scanf("%d", &day);...4.3 switch语句default 在 switch 语句中 case 语句和 default 语句是没有顺序要求,只要你顺序是满⾜实 际需求就可以。

    14210

    ABAP之选择屏幕真假必详细使用方式

    .当有些内容输入数据为必录时.我们就可以设定对应选择屏幕内容为必须录入.这时就用到了今天讲内容,真假必录....何为真,何为假 在SAP 中,我们必须录入界面会显示一个√ ,并且会有对应内容提示.那么,什么为真,什么为假呢. 真必就是说,如果你不输入的话,这个程序会卡在着,提示你必须输入某一个字段....假必就是说对应√显示了,但是你不写的话,程序照样可以继续进行内容. 当我们某些界面必须录入时,比如销售组织,销售订单,生产组等这种如果不选择会出现数据量非常大内容,我们就需要增加必选项....那么为什么要有真的必和假呢. 因为在做某些选择屏幕和数据联动时,真必会卡住当前程序,如果假必的话就不会卡住当前数据. 还有一点应该就是 如果屏幕数据返回,真必输入的话值会清空....技术总结 今天讲述内容是,真假必使用方式,以及为什么要使用这些相关内容.熟练使用真假必可以增加用户友好性. 百里鸡汤 生命之花在命运中绽放,我时间轴在往前滚动.

    1.9K10

    C语言常见6种错误!

    1、忽略大小写字母区别 编译代码时把x和X认为是两个不同变量名,而显示出错信息。C语言认为大写字母和小写字母是两个不同字符。习惯上,符号常量名用大写,变量名用小写表示。...改错时,有时在被指出有错一行中未发现错误,就需要看一下上一行是否漏掉了分号。 4、scanf函数输入时忘记加地址运算符“&” int a,b; scanf(“%d%d”,a,b); 这是不合法。...5、输入输出数据类型与所定义类型不一样 例如:x已定义为整型,y定义为浮点型 x=3;y=4.5; printf(“%f%d\n”,x,y); 编译时不给出出错信息,但运行结果将与原意不符。...6.switch语句中漏写break语句 例如:根据考试成绩等级打印出百分制数段。...因此,当grade值为A时,printf函数在执行完第一个语句后接着执行第二、三、四、五个printf函数语句正确写法应在每个分支后再加上“break;”。

    1.3K3129

    c语言三种基本结构——初学者一定要了解哦

    2.选择语句之→switch语句 2.1 switch语句基本结构: 2.2 switch语句基本应用 2.3 break语句switch语句作用: 2.4 default语句 三、循环结构(循环语句...正确代码: 我们可以用{}代码块,这样代码风格就显得更清楚。...("%d<%d", a, b); } return 0; } 2.选择语句之→switch语句 当我们需要进行很多次判断时候,如果一直用if……else if……else if……就会显得很麻烦,...case 6: printf("今天是星期六\n"); break; case 7: printf("今天是星期天\n"); break; } return 0; } 测试运行:当我输入...例图: 总结:default 语句相当于默认选择结果,当找不到”目标门牌号“时候就会被执行。 下面的细节很重要!!!

    63620

    【c语言】知识记录——分支和循环(含随机数知识点)

    每⼀个 case 语句代码执⾏完成后,需要加上 break ,才能跳出这个switch语句。 3....在 switch 语句中 case 语句和 default 语句是没有顺序要求,只要你顺序是满⾜实 际需求就可以。 不过我们通常是把 default 句放在最后处理。...二 .循环语句 (1)while语句 基本语法: while(表达式) { }; 练习题:⼊⼀个正整数,逆序打印这个整数每⼀位  例如: ⼊:1234,输出:4 3 2 1            ...基本用法: #include int main() { printf("这句话会被正常打印,当代码运行到下一行出现了跳转语句,提示跳到here处\n"); goto here;...printf("这句话就不会被打印出来\n"); here: printf("直接跳过上面的那个,打印现在这句话\n"); return 0; } 注意:      goto 语句如果使⽤不当

    10610

    switch 语句,while 循环,for 循环和do while循环

    switch 语句 switch 语句是⼀种特殊形式 if…else 结构,⽤于判断条件有多个结果情况。它把多重 else if 改成更易⽤、可读性更好形式。...如果找不到对应值,就执⾏ default 分⽀ 输入一个0~7数,输出“星期 * ”: #include int main() { int day = 0; scanf("%...); break; } return 0; } 如果输入数字8,就会执行default分支: 在 switch 语句中 case 语句和 default 语句是没有顺序要求,只要你顺序是满...⼊⼀个正整数,逆序打印这个整数每⼀位 例如: ⼊:1234,输出:4 3 2 1 ⼊:521,输出:1 2 5 #include int main() { int...所以在 do while 语句中循环体是⾄少执⾏⼀次,这是 do while 循环⽐较特殊地⽅。 练习: ⼊⼀个正整数,计算这个整数是⼏位数?

    13610

    【C语言】分支语句详解

    ⽐如:要求⼊⼀个整数,判断整数是0,还是正数或者负数。请看如下代码: 上面的if语句就嵌套在else语句中。...如果找不到对应值, 就执⾏ default 分⽀ switch语句和if语句对比:比如要实现:⼊任意⼀个整数值,计算除2之后余数,使用if语句为: 使用Switch语句为: 上述代码中...就⽐如上⾯代码就执⾏了case 0 语句,还执行了case 1 中语句 Switch语句default: 如果我们输入值不在我们case中,那么我们就会用到default,用来排除其他情况...,比如:⼊⼀个1~7数字,打印对应星期⼏,例如输入1就打印星期一,代码如下: 试想如果用户没有按要求输入1~7数字呢?...⼊1~5,输出是“⼯作⽇” ⼊6~7,输出“休息⽇” 如果输入其他数字,那么打印输入错误 如何简便地将要求完成 答案在本文末尾 六、答案 if语句练习答案: 条件操作符练习答案:

    6210

    接口与通信-LCD1602显示

    所以只需要看两个写时序:① 当我们要写指令字,设置LCD1602 工作方式时:需要把RS置为低电平,RW置为低电平,然后将数据送到数据口D0~D7,最后E引脚一个高脉冲将数据写入。...② 当我们要写入数据字,在1602 上实现显示时:需要把RS置为高电平,RW置为低电平,然后将数据送到数据口D0~D7,最后E 引脚一个高脉冲将数据写入。...P0口高四位,所以传送高四位不用改 Lcd1602_Delay1ms(1); LCD1602_E = 1; //写入时序 Lcd1602_Delay1ms(5); LCD1602_E = 0;//...ifndef LCD1602_4PINS void LcdWriteData(uchar dat) //写入数据{ LCD1602_E = 0; //使能清零 LCD1602_RS = 1; //选择输入数据...for语句第一句就不用赋值了--//    for (;c>0;c--) { for (b=38;b>0;b--) { for (a=130;a>0;a--); }           }

    38700

    C语言:分支与循环

    二、switch语句 除了 if 语句外,C语⾔还提供了 switch 语句来实现分⽀结构。 switch 语句是⼀种特殊形式 if...else 结构,⽤于判断条件有多个结果情况。...2.1 if和switch对比 例如:⼊任意⼀个整数值,计算除3之后余数 用if语句写: int main() { int n = 0; scanf("%d", &n); if(n%3 ==...printf("余数是1\n"); case 2: printf("余数是2\n"); } return 0; } 输入:7 输出 :余数是1 余数是2 原因是 switch...就⽐如前⾯做打印星期练习,如果 day ⼊不是1~7值,如果我们要提⽰:⼊错误 int main() { int day = 0; scanf("%d", &day); switch...3.2 while循环正确使用 因为while循环只要后面的条件满足就可以实现死循环,所以我们需要在while循环里面的语句增加调整部分使得while每次循环都渐渐接近条件不满足情况,最后退出。

    16710

    【超全】C语言小白最容易犯17种错误,你中了几个?

    {   z=x+y;   t=z/100;   printf(“%f”,t); } 对于复合语句来说,最后一个语句中最后分号不能忽略不写(这是和PASCAL不同)。 6、多加分号。   ...①scanf(“%d%d”,&a,&b); 输入时,不能用逗号作两个数据间分隔符,如下面输入不合法: 3,4 输入数据时,在两个数据之间以一个或多个空格间隔,也可用回车键,跳格键tab。...11、输入数据时,企图规定精度。 scanf(“%7.2f”,&a); 这样做是不合法输入数据时不能规定精度。   12.switch语句中漏写break语句。...因此,当grade值为A时,printf函数在执行完第一个语句后接着执行第二、三、四、五个printf函数语句正确写法应在每个分支后再加上“break;”。...,它以ASCII代码形式存放在一个文本文件中 D) C语言源程序经编译后生成后缀为.obj目标程序 上期答案: A 解析:C语言中非执行语句会被编译,不会生成二进制机器指令,所以A)错误。

    1.4K51

    轻松拿捏C语言——关于 printf 和 scanf 那些事儿

    程序运行到这个语句时,会停下来,等待用户从键盘输入。 用户⼊数据、按下回车键后, scanf() 就会处理用户输入,将其存入变量。 它原型定义在头文件 stdio.h 。...解读用户输入时,会从上⼀次解读遗留第⼀个字符开始,直到读完缓存,或者遇到第⼀个不符合条件字符为止。...("%d\n", x); scanf("%f", &y); printf("%f\n", y); return 0; } 上⾯示例中, scanf() 读取用户⼊时, %d 占位符会忽略起⾸空格...2个数后,按 ctrl+z ,提前结束输入: 在VS环境中按3次 ctrl+z ,才结束了输入,我们可以看到r是2,表示正确读取了2个数值。..., scanf() 占位符 %10s 表示最多读取用户输入 10个字符,后面的字符将被丢弃,这样就不会有数组溢出风险了 2.4赋值忽略符 有时候输入内容不符合格式要求 #include <stdio.h

    36110

    【C语言】分支和循环

    ,就是 printf(“成年了\n”); ,if语句为真,则打印成年了,if语句为假,则不打印,对于 printf(“可以谈恋爱了\n”); 是独立存在,不管if语句条件真假,都会被执行。...main() { int age = 0; scanf("%d", &age); if (18 <= age <= 36) { printf(" 青年\n"); } return 0; } 当我输入...注: switch expression 必须是整型表达式 case 后值,必须是整形常量表达式 4.1 if语句switch语句对比 举个例子:输入任意一个整数值,计算除3之后余数 如果使用...注意: case 和后边数字之间必须有空格 每一个个 case 语句代码执行完成后,需要加上 break ,才能跳出这个switch语句 4.2 switch语句break 输入一个1~7数字...,来在代码中觉得是否使用break ,或者在哪里使用break ,才能正确完成实际需求。

    14710
    领券