![](/img/trans.png)
[英]issue with switch inside a do while, control cannot fall through from one case label to another
[英]“Cannot fall through” Switch Error
} else {
int indexGenerator = numberGenerator.Next(1, 4);
int answer1 = finalUserInput - theCorrectAnswer;
switch (indexGenerator) {
case 1:
Console.WriteLine("You are off by" + answer1);
case 2:
Console.WriteLine("So close. Maybe if you add or subtract " + answer1 + "?");
當我嘗試使開關工作時,會彈出一條錯誤消息,提示“控制案例無法從Case1掉入另一個案例”。
您需要添加break;
在switch語句中每種情況的結尾處。
switch (indexGenerator) {
case 1:
Console.WriteLine("You are off by" + answer1);
break;
case 2:
Console.WriteLine("So close. Maybe if you add or subtract " + answer1 + "?");
break;
}
這里的問題是您忘記添加break;
是您的代碼。 您的代碼應如下所示。
switch (indexGenerator){
case 1:
Console.WriteLine("You are off by" + answer1);
break;
case 2:
Console.WriteLine("So close. Maybe if you add or subtract " + answer1 + "?");
break;
}
break
的目的是基本上告訴您的程序您正在脫離這種case:
語句的一部分。
您需要在case 1
的結尾處break
一下:
}
else
{
int indexGenerator = numberGenerator.Next(1, 4);
int answer1 = finalUserInput - theCorrectAnswer;
switch (indexGenerator)
{
case 1:
Console.WriteLine("You are off by" + answer1);
break; // missing break
case 2:
Console.WriteLine("So close. Maybe if you add or subtract " + answer1 + "?");
break; // missing break
如我所展示的,在case 2
塊的末尾添加一個。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.