Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在c中添加检查条件#_C# - Fatal编程技术网

C# 如何在c中添加检查条件#

C# 如何在c中添加检查条件#,c#,C#,我希望第23行的if检查用户是否输入了字母x,如果输入了,则停止代码并对已经输入的数字进行乘法。我该怎么做?我尝试了几种方法,但我一直在搞砸其他事情,这是代码的最终格式,我只需要在其中完成检查。先谢谢你 using System; class Program { static void Main(string[] args) { string[] array = new string[100]; bool a = Console.ReadKey

我希望第23行的if检查用户是否输入了字母x,如果输入了,则停止代码并对已经输入的数字进行乘法。我该怎么做?我尝试了几种方法,但我一直在搞砸其他事情,这是代码的最终格式,我只需要在其中完成检查。先谢谢你

 using System;

 class Program
 {
   static void Main(string[] args)
   {
        string[] array = new string[100];
        bool a = Console.ReadKey(true).Key == ConsoleKey.X;
        if (a==true)
        {
            Console.WriteLine("1");
            Console.ReadLine();
        }
        else
        {
            while(a==false)
            {
                double multiply = 1;
                for (int i= 0; i<array.Length; i++)
                { 
                    array[i] = Convert.ToString(Console.ReadLine());
                    if (a == true) break;
                    multiply *= Convert.ToDouble(array[i]);
                }
                Console.WriteLine(multiply);
                Console.ReadLine();
            }
        }
   }
 }

从控制台读取变量,如果它是
x
则中断循环,否则将其设置为数组:

for (int i= 0; i<array.Length; i++)
{ 
    string input = Convert.ToString(Console.ReadLine());
    if (input == "x" || input == "X") break;
    else array[i] = input;
    multiply *= Convert.ToDouble(array[i]);
}

for(int i=0;i从控制台读取变量,如果它是
x
则中断循环,否则将其设置为数组:

for (int i= 0; i<array.Length; i++)
{ 
    string input = Convert.ToString(Console.ReadLine());
    if (input == "x" || input == "X") break;
    else array[i] = input;
    multiply *= Convert.ToDouble(array[i]);
}

用于(int i=0;i显然,您当前的方法不会产生期望的结果,因为
a
从未设置在循环内部;您必须在循环内部相应地重新设置
a

显然,您当前的方法不会产生期望的结果,因为
a
从未设置在循环内部;您必须重新设置set
a
在循环内部相应地进行设置。

您只设置了一次
a
,每次新输入后都需要进行设置。请查看此问题@KristófTóth谢谢您的建议,这将在将来的情况下对我有所帮助,而且我已经用一个更容易理解的解决方案编辑了我的初始请求您正在设置
a
只需一次,每次输入新内容后都需要设置。请查看此问题@KristófTóth谢谢您的建议,这将在将来的案例中对我有所帮助,而且我已经用更容易理解的解决方案编辑了我的初始请求