C#While循环(添加用户输入以达到目标)

时间:2017-04-16 18:49:53

标签: c# while-loop

我需要创建一个程序,添加用户输入以达到目标,结果如下所示。

enter image description here

我必须使用' While Loop'为了这, 但是我很难使用while循环...

这是我的代码

Console.WriteLine("Enter Target Value: 6");

int total = 0;
int target = 6;
int i;
for (i = 1; i <= 4; i++)
{
    Console.Write("Enter #{0}:\t", i);
    total += Convert.ToInt32(Console.ReadLine());
}

while (total == target);

Console.WriteLine("It took {0} inputs to take the sum to\t{1}",i, total);
Console.ReadLine();

你能帮我找一些问题吗?

3 个答案:

答案 0 :(得分:0)

这是完整的例子。

  static void Main(string[] args)
    {


        try
           {
            int i = 0;
            int number;
            int input=0;
            Console.WriteLine("Enter target number ");

            number =   int.Parse(Console.ReadLine());
            while (input != number && input < number)
            {
                Console.WriteLine($"Enter number  {i+1}");
                input += int.Parse(Console.ReadLine());
                i++;


            }
            Console.WriteLine($"It took {i} number to make the sum {number}");


          }
          catch (Exception e)
          {



          }


        Console.ReadLine();
    }

答案 1 :(得分:0)

您知道用户输入的号码吗?不,你不知道。所以你不知道要达到这笔钱还需要多少数字。

为工作选择合适的工具。

For Loop

A&#34; For&#34;循环用于重复特定的代码块已知次。

While循环

A&#34;而&#34;循环用于重复特定的代码块未知次,

鉴于上述2个选项,您的选择应该是while循环,因为您不知道要求用户输入数字以达到总和的次数。它可能是1次或多次。

在C#中,还有do while循环,如果你知道你必须某事至少一次甚至更多,那就要使用它。因此,对你的情况来说最好选项是使用do while

您可以在while loopfor loopdo while上阅读更多内容。

答案 2 :(得分:-1)

您的代码完全正常运行。我希望这会有所帮助:

Console.WriteLine("Enter Target Value: 6");

int total = 0;
int target = 6;
int i = 1;

while (i <= 4)
{
    Console.Write("Enter #{0}:\t", i);
    total += Convert.ToInt32(Console.ReadLine());
    i++;
}

while (total == target);
Console.WriteLine("It took {0} inputs to take the sum to\t{1}",i, total);

Console.ReadLine();