csharp输入一个正整数N,然后输入N个浮点数,计算N个浮点数的均值,保留5位小数。
时间: 2024-12-17 22:20:37 浏览: 13
在 C# 中,你可以通过以下步骤来实现这个功能:
1. 首先,创建一个 `decimal` 类型的变量 `sum` 来存储所有浮点数的总和,因为 `decimal` 类型可以提供更高的精度处理浮点数运算,特别是在需要精确平均值的情况下。
2. 使用 `Console.ReadLine()` 或 `int.TryParse()` 函数获取用户输入的正整数 N,并验证是否有效。
3. 创建一个 `List<Decimal>` 或 `ArrayList` 存储这些浮点数,因为它们允许动态添加元素。
4. 循环读取 N 次,每次将用户输入的浮点数转换成 `decimal` 类型并加到 `sum` 上。
5. 计算均值,即 `sum` 除以 N。
6. 最后,使用 `Math.Round()` 方法保留五位小数并将结果输出。
下面是一个简单的示例代码:
```csharp
using System;
using System.Collections.Generic;
class Program
{
static void Main()
{
Console.Write("请输入正整数 N:");
string input = Console.ReadLine();
int n;
if (int.TryParse(input, out n) && n > 0)
{
List<decimal> numbers = new List<decimal>();
for (int i = 0; i < n; i++)
{
Console.Write($"请输入第 {i + 1} 个浮点数:");
decimal num;
if (decimal.TryParse(Console.ReadLine(), out num))
numbers.Add(num);
}
decimal sum = numbers.Sum();
decimal average = Math.Round(sum / n, 5); // 保留5位小数
Console.WriteLine($"N个浮点数的平均值是:{average}");
}
else
{
Console.WriteLine("无效的输入,请输入一个正整数。");
}
}
}
```
阅读全文