请教“控制不能从一个 case 标签(“case 0:”)贯穿到另一个 case 标签”?
正在学习c#,书上有一作业题:
//SwitchTest.cs
using System;
class SwitchTest
{
public static void Main()
{
int i=0,j=1;
switch(i)
{
case 0:
Console.WriteLine( "i=0 ");
switch(j)
{
case 0:
Console.WriteLine( "j=0 ");
break;
case 1:
Console.WriteLine( "j=1 ");
break;
case 2:
Console.WriteLine( "j=2 ");
break;
}
case 1:
Console.WriteLine( "i=1 ");
break;
default:
Console.WriteLine( "\n ");
break;
}
Console.Read();
}
}
编译后出了错,却不知怎么改?
正在执行主编译...
f:\code\temp1\whileecho.cs(8,3): error CS0163: 控制不能从一个 case 标签(“case 0:”)贯穿到另一个 case 标签
生成完成 -- 1 个错误,0 个警告
正在生成附属程序集...
---------------------- 完成 ---------------------
生成: 0 已成功, 1 已失败, 0 已跳过
------解决方案--------------------switch(j)
{
case 0:
Console.WriteLine( "j=0 ");
break;
case 1:
Console.WriteLine( "j=1 ");
break;
case 2:
Console.WriteLine( "j=2 ");
break;
}
这里补一个 break;
------解决方案--------------------case 0:
Console.WriteLine( "i=0 ");
后面要加break;
每个case都必须有break;
------解决方案--------------------补在里面的 switch 结束后
这是外面的 switch 必须的
------解决方案--------------------第一个case就少了
break;
这种错误提示都市少了break