C# 当用户输入209312414时,程序需要停止

C# 当用户输入209312414时,程序需要停止,c#,C#,当用户输入209312414时,我需要程序停止。我的while循环不工作,因为程序正在继续。我用另一种方式做了不同的选择,但在循环结束时,当我输入209312414时,它不会停止。我会接受任何其他建议 using System; public class program { public static void Main() { const double PRICE209 = 12.

当用户输入209312414时,我需要程序停止。我的while循环不工作,因为程序正在继续。我用另一种方式做了不同的选择,但在循环结束时,当我输入209312414时,它不会停止。我会接受任何其他建议

using System;

        public class program
        {
            public static void Main()
            {
                const double PRICE209 = 12.99, PRICE312 = 16.77, PRICE414 = 109.07;

                double price;
                int stockNum;

                Console.Write("Please enter stock number. ");
                stockNum = Convert.ToInt32(Console.ReadLine());

                while ((stockNum == 209) || (stockNum == 312) || (stockNum == 414))
                {
                    if ((stockNum == 209) || (stockNum == 312) || (stockNum == 414))
                    {
                        if (stockNum == 209)
                        {
                            price = PRICE209;
                            Console.WriteLine("The price for item # {0} is {1}", stockNum, price.ToString("C"));
                        }
                        else if (stockNum == 312)
                        {
                            price = PRICE312;
                            Console.WriteLine("The price for item # {0} is {1}", stockNum, price.ToString("C"));
                        }
                        else if (stockNum == 414)
                        {
                            price = PRICE414;
                            Console.WriteLine("The price for item # {0} is {1}", stockNum, price.ToString("C"));
                        } // end of the else if statement
                    } // end the if statement 
                    Console.Write("Please enter stock number. ");
                    stockNum = Convert.ToInt32(Console.ReadLine());
                }  // end the while loop
                        Console.WriteLine();
                        Console.WriteLine("press <enter> to terminate program");
                        Console.ReadLine();
            }
        }
使用系统;
公共课程
{
公共静态void Main()
{
常数双倍价格209=12.99,价格312=16.77,价格414=109.07;
双倍价格;
int-stockNum;
控制台。写(“请输入股票编号”);
stockNum=Convert.ToInt32(Console.ReadLine());
而((stockNum==209)| |(stockNum==312)| |(stockNum==414))
{
如果((stockNum==209)| |(stockNum==312)| |(stockNum==414))
{
如果(stockNum==209)
{
价格=价格209;
Console.WriteLine(“项目{0}的价格为{1}”),stockNum,price.ToString(“C”);
}
else if(stockNum==312)
{
价格=价格312;
Console.WriteLine(“项目{0}的价格为{1}”),stockNum,price.ToString(“C”);
}
else if(stockNum==414)
{
价格=价格414;
Console.WriteLine(“项目{0}的价格为{1}”),stockNum,price.ToString(“C”);
}//else if语句的结尾
}//结束if语句
控制台。写(“请输入股票编号”);
stockNum=Convert.ToInt32(Console.ReadLine());
}//结束while循环
Console.WriteLine();
Console.WriteLine(“按以终止程序”);
Console.ReadLine();
}
}

将while循环更改为:

while ((stockNum != 209) && (stockNum != 312) && (stockNum != 414))

放一个
断点if
语句中的code>我不明白你的意思。用户输入除
209
312
414
以外的任何数字后,此处显示的程序将退出循环。如果用户输入的不是数字,则程序将因异常而停止。如果您的意思是希望在用户输入三个不同的数字后退出循环,这些数字的值分别为
209
312
414
,那么您只需跟踪输入了哪些数字(例如在
bool
变量中),并将该信息包括在循环条件中。这里的具体问题是什么?你有什么问题?你有头脑或案例陈述吗?:)根据MSDN-while语句执行一条语句或语句块,直到指定表达式的计算结果为false。使用它的方法是
while(true)
。因此,当您收到
209
312
414
时,您在代码中所做的实际上就是循环。另外,如果输入的是这些数字,我不明白为什么在您计划停止时,
209
312
414
会出现
if-else