请教C#高手~~~这个代码·不用goto语句应该怎么改呢?

来源:百度知道 编辑:UC知道 时间:2024/06/14 03:44:43
using System;
using System.Collections.Generic;
using System.Text;

namespace mhlConsoleApplication2
{
class Program
{
static void Main(string[] args)
{
Start:
Console.WriteLine("请选择要生成的图形:");
Console.WriteLine(" 1.正方形");
Console.WriteLine(" 2.长方形");
Console.WriteLine(" 3.三角形");
string Style = Console.ReadLine();
if (Style != "1" && Style != "2" && Style != "3")
{
Console.WriteLine("输入错误!");
goto Start;
}
else
{
//调用处理方法
Draw dr = new Draw();
dr.Draw_Image(Style);
goto Start;
}
}

}
}

这直接一死循环嘛
在start标签处加个 while(1==1)
然后,下面的代码全部用{}括起来,同时去掉里面的goto即可。
using System;
using System.Collections.Generic;
using System.Text;

namespace mhlConsoleApplication2
{
class Program
{
static void Main(string[] args)
{
while(1==1)
{
Console.WriteLine("请选择要生成的图形:");
Console.WriteLine(" 1.正方形");
Console.WriteLine(" 2.长方形");
Console.WriteLine(" 3.三角形");
string Style = Console.ReadLine();
if (Style != "1" && Style != "2" && Style != "3")
{
Console.WriteLine("输入错误!");

}
else
{
//调用处理方法
Draw dr = new Draw();
dr.Draw_Image(Style);

}
}
}
}
}

static void Main(string[] args)
{
string Style = CheckArgs();
Draw dr = new Draw();
dr.Draw_Image(Style);
}

static string CheckArgs()
{
Console.Wr