我正在学习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();
}
正如你所看到的,我让计数器会询问需要多少次来询问体重,但我不知道如何为每个包取出量并将它们一起添加到循环内。我非常感谢这方面的帮助。提前谢谢。
答案 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
,因为我改为不再需要它的方法。