C#:如何声明一个变量来保存一个和每次通过while循环增加这个变量

时间:2017-03-05 03:00:20

标签: c# while-loop

我正在学习C#,我试图找出如何声明一个变量来保存一个和每次通过while循环增加这个变量。我的目标是询问用户想要发送多少包,然后获得每个包的重量(使用while循环)。问题是如何获取每个输入的输入(无论用户指定发送多少个包)并将其分配给变量而不覆盖while循环中的最后一个条目,同时将它们全部添加在一起并显示组合为&# 34;总"

 static void Main(string[] args)
    {
        Console.WriteLine("Package Shipping Calculator");

        //ask user how many packages they want to ship
        Console.Write("How many packages would you like to ship? ");
        string userinput = Console.ReadLine();
        string userinput2;
        double result;
        double total=0;

        //create loop for weight in lbs that the package weighs. Multiply $2.35 per pound (weight*2.35)
        //for each increment, then add the result
        int counter = 1;

        while (counter <= int.Parse(userinput))
        {
            Console.Write("Please enter the weight of package {0}: ", counter);
            userinput2 = Console.ReadLine();
            result = double.Parse(userinput2) * 2.35;

            counter++;
        }

        counter --;

        Console.Write("\nThe cost to ship {0} packages is {1:C}", counter, total);



        Console.ReadKey();
    }

正如你所看到的,我让计数器会询问需要多少次来询问体重,但我不知道如何为每个包取出量并将它们一起添加到循环内。我非常感谢这方面的帮助。提前谢谢。

4 个答案:

答案 0 :(得分:2)

啊!花了我一秒时间才弄明白这个问题,因为它太小了!您需要将result = double.Parse(userinput2) * 2.35;更改为result += double.Parse(userinput2) * 2.35;

答案 1 :(得分:1)

我必须说,你真的很亲密。我唯一可以建议的是,每当它经历它的循环时,你就会将之前的result量添加到自身。如

while (counter <= int.Parse(userinput))
    {
        Console.Write("Please enter the weight of package {0}: ", counter);
        userinput2 = Console.ReadLine();
        result = (double.Parse(userinput2) * 2.35) + result;

        counter++;
    }

您不应该对此有任何疑问,因为您已经将上面的result声明为0

答案 2 :(得分:1)

在你的代码中添加

total = total + result;

之后

result = double.Parse(userinput2) * 2.35;

答案 3 :(得分:0)

由于结合了很棒的建议,我能够找到问题的答案。我将result = double.Parse(userinput2) * 2.35;更改为result += double.Parse(userinput2) * 2.35;,然后将变量result=0声明为未分配值。我从最后的Write行中删除了total,因为我改为不再需要它的方法。