在C#中输入0时添加输入的数字之和?
我对C#完全陌生,完全迷路了。我需要做的是输入尽可能多的数字并继续输入,但当您输入值“0”时,即您将所有输入的数字相加 这是我的节目:在C#中输入0时添加输入的数字之和?,c#,sum,add,do-while,C#,Sum,Add,Do While,我对C#完全陌生,完全迷路了。我需要做的是输入尽可能多的数字并继续输入,但当您输入值“0”时,即您将所有输入的数字相加 这是我的节目: using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Activity2 { class Program { static void Main(string[] args) {
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Activity2
{
class Program
{
static void Main(string[] args)
{
int n, sum, x = 0;
do
{
Console.WriteLine("Enter a Number: ");
n = int.Parse(Console.ReadLine());
}
while (n != 0);
{
sum = n + x;
x = n;
n = sum;
Console.WriteLine("The sum is: " + n);
}
Console.ReadLine();
}
}
}
一些建议:
循环比while
循环更好do..while
- 您应该使用
方法进行输入验证int.TryParse
- 您应该计算循环中的数字之和
- 您只需使用两个int变量即可解决此问题:
用于读取的数字,而n
用于数字和李>sum
static void Main(string[] args)
{
int sum = 0;
while (true)
{
Console.WriteLine("Enter a Number: ");
int n;
if (int.TryParse(Console.ReadLine(), out n))
{
if (n == 0)
break;
sum += n;
}
}
Console.WriteLine("The sum is: " + sum);
}
在while循环外打印总和
sing System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Activity2
{
class Program
{
static void Main(string[] args)
{
int n, sum, x = 0;
do
{
Console.WriteLine("Enter a Number: ");
n = int.Parse(Console.ReadLine());
}
while (n != 0);
{
sum = n + x;
x = n;
n = sum;
}
Console.WriteLine("The sum is: " + n);
Console.ReadLine();
}
}
}
你可以简单地用do。。。虽然循环
private static void Main(string[] args)
{
int n, sum = 0;
do
{
Console.WriteLine("Enter a number:");
n = Convert.ToInt32(Console.ReadLine());
sum += n;
} while (n != 0);
Console.WriteLine("Sum is:"+sum);
Console.ReadKey();
}
皈依ToTIN32()是一种将字符串转换成INT32(int).< /p>的方法,您可以考虑添加它们,只要输入“0”,就可以打印总数。这是正确的,但是这里应该建议更好地处理用户输入。(Int32.TryParse)。说到wa,你真的应该添加解释,而不仅仅是代码。@Steve,我用TryParse添加了check。