【问题标题】:Writing out input numbers to console application,C#将输入数字写入控制台应用程序,C#
【发布时间】:2013-08-15 12:54:37
【问题描述】:

我有一个程序要求输入一个数字 (int x)。然后,用户应该向控制台输入 x 个数字。控制台应该将所有数字加在一起并写出所有输入数字的结果。所以我这样做了:

Console.WriteLine("Enter an number: ");
int x = int.Parse(Console.ReadLine());

for (int i = 0; i < x; i++ )
{
    Console.WriteLine("Ange tal {0}: ",i );
    double numbers= double.Parse(Console.ReadLine());
}

Console.WriteLine("Sum of the entered numbers are: {0} ",x);
Console.ReadLine();

但结果只给了我最后输入的数字。我做错了什么?

【问题讨论】:

  • +1 编辑拙劣,请见谅。
  • 你在哪里把这些数字加在一起? ^^
  • @duDE 在云端! :-) 所有希望都在哪里!!!
  • for (int i = 0; i

标签: c# numbers console-application


【解决方案1】:

您需要创建一个变量来存储数字的总和 (sum)。 然后在你读完下一个数字后,你应该把它加到你的总和中。

Console.WriteLine("Enter a number: ");
int x = int.Parse(Console.ReadLine());
double sum = 0;
for (int i = 0; i < x; i++ )
{
   Console.WriteLine("Ange tal {0}: ", i);
   double number = double.Parse(Console.ReadLine());
   sum += number;
}

Console.WriteLine("Sum of the entered numbers is: {0}", sum);
Console.ReadLine();

【讨论】:

  • 哦,是的。我知道我以某种方式将它们加在一起。但首先我认为我必须创建 x 个变量。 (与他们首先输入的变量一样多)。非常感谢!
  • 您尚未创建x 变量。你有 1 个变量,每次迭代都会覆盖它。然后你打印了x。但x 是一个数字。
【解决方案2】:
    Console.Write("Enter N number: ");
    double numberN = double.Parse(Console.ReadLine());
    double sum = 0;

    for (double i = 0; i < numberN; i++)
    {

        Console.Write("Enter number: ");
        double number = double.Parse(Console.ReadLine());
        sum += number;

    }

    Console.WriteLine("The sum is: {0}", sum); 

【讨论】:

  • 好的答案解释并提供代码。考虑更新您的答案,以包含有关此代码如何工作以及为什么它是最佳选择的说明。
【解决方案3】:

这样输入数字的总和就会显示出来

Console.WriteLine("Enter an number: ");
        int x = int.Parse(Console.ReadLine());
        double sum = 0
        for (int i = 0; i < x; i++ )
        {
            Console.WriteLine("Ange tal {0}: ",i );
            sum = sum + double.Parse(Console.ReadLine());

        }

        Console.WriteLine("Sum of the entered numbers are: {0} ",sum);
        Console.ReadLine();

【讨论】:

    【解决方案4】:

    您实际上从未在代码中进行任何求和。

    double sum = 0;
    for (int i = 0; i < x; i++ )
    {
        Console.WriteLine("Ange tal {0}: ",i );
        double numbers= double.Parse(Console.ReadLine());
        sum += numbers;
    }
    
        Console.WriteLine("Sum of the entered numbers are: {0} ",sum);
    

    【讨论】:

      【解决方案5】:

      你可以这样做

      Console.WriteLine("Enter an number: ");
      int x = int.Parse(Console.ReadLine());
      List<double> allNumbers = new List<double>();
      for (int i = 0; i < x; i++ )
      {
            Console.WriteLine("Ange tal {0}: ",i );
            double temp;
            if(double.TryParse(Console.ReadLine(), out temp))
               allNumbers.Add(temp);
            else
                Console.WriteLine("Enter a valid number");  
      }
      
      Console.WriteLine("Sum of the entered numbers are: {0} ",allNumbers.Sum());
      Console.ReadLine();
      

      【讨论】:

        【解决方案6】:

        这里有代码,WriteWriteLine 格式正确。

        Console.Write("Enter an number: ");
        int x = int.Parse(Console.ReadLine());
        
        double sum = 0;
        
        for (int i = 0; i < x; i++)
        {
            Console.Write("Ange tal {0}: ", i);
            double number = double.Parse(Console.ReadLine());
            sum = sum + number;
        }
        
        Console.WriteLine("Sum of the entered numbers are: {0:R} ", sum);
        Console.Write("Press a key to exit");
        Console.ReadKey();
        

        但现在我们想更进一步:尝试插入:

        2
        0.1
        0.2
        

        (或0,10,2,如果您使用, 作为小数分隔符)

        我一直认为OMG Ponies!!! (Aka Humanity: Epic Fail) 是最好的阅读方式...

        【讨论】:

          【解决方案7】:
          using System;
          using System.Collections.Generic;
          using System.Linq;
          using System.Text;
          using System.Threading.Tasks;
          
          namespace add
          
          {
              class Program
              {
                  static void Main(string[] args)
                  {
                      int a,b,c;
                      Console.WriteLine("Enter the first number");
                      a = Convert.ToInt32(Console.ReadLine());
                      Console.WriteLine("Enter second number");
                      b = Convert.ToInt32(Console.ReadLine());
                      c = a + b;
                      Console.WriteLine("The addition of two number is {0}", c);
                      Console.ReadLine();
                  }
              }
          }
          

          【讨论】:

            猜你喜欢
            • 2018-03-17
            • 2012-12-21
            • 1970-01-01
            • 2017-06-05
            • 1970-01-01
            • 1970-01-01
            • 2011-05-20
            • 2023-03-21
            相关资源
            最近更新 更多