在 C# 中输入 0 时将输入的数字的总和相加
本文关键字:输入 数字 | 更新日期: 2023-09-27 18:31:33
我绝对是C#的新手,我完全迷茫了。我需要做的是输入尽可能多的数字并继续输入,但是当您输入值"0"时,即将所有输入的数字全部相加时。
这是我的程序:
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);
}
你可以简单地用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();
}
ConvertToInt32() 是一种将字符串转换为 int32 (int) 的方法。
在循环时打印外部的总和。
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();
}
}
}