从一个整数数组中取出最大整数,最小整数,总和,平均值 //Console.WriteLine("请输入一个几位数的数组"); //int a = int.Parse(Console.ReadLine()); //int[] b = new int[a]; //int num = 0; //int max = 0; //int min = 0; //for (int i = 0; i < a; i++) //{ // Console.WriteLine("输入第{0}个数", i + 1); // int c = int.Parse(Console.ReadLine()); // b[i] = c; // num += c; // max = max > c ? max : c; // min = min < c ? min : c; //} //Console.WriteLine("总和{0}平均值{1}最大整数{2}最小整数{3}", num,num/a,max,min );修改这段代码
时间: 2023-11-28 13:47:38 浏览: 82
可以按照以下方式修改代码:
```csharp
Console.WriteLine("请输入一个整数数组,以空格分隔各个元素:");
string[] inputs = Console.ReadLine().Split();
int[] nums = new int[inputs.Length];
int sum = 0;
int max = int.MinValue;
int min = int.MaxValue;
for (int i = 0; i < inputs.Length; i++)
{
nums[i] = int.Parse(inputs[i]);
sum += nums[i];
max = Math.Max(max, nums[i]);
min = Math.Min(min, nums[i]);
}
double avg = (double)sum / nums.Length;
Console.WriteLine($"总和:{sum},平均值:{avg:F2},最大整数:{max},最小整数:{min}");
```
这段代码首先读取用户输入的整数数组,并将其转换成整型数组。然后遍历整型数组,计算总和、最大值和最小值。最后计算平均值并输出结果。请注意,这里计算平均值时要将总和转换成 double 类型,以保留小数部分。
相关问题
从一个整数数组中取出最大整数,最小整数,总和,平均值 //Console.WriteLine("请输入一个几位数的数组"); //int a = int.Parse(Console.ReadLine()); //int[] b = new int[a]; //int num = 0; //int max = 0; //int min = 0; //for (int i = 0; i < a; i++) //{ // Console.WriteLine("输入第{0}个数", i + 1); // int c = int.Parse(Console.ReadLine()); // b[i] = c; // num += c; // max = max > c ? max : c; // min = min < c ? min : c; //} //Console.WriteLine("总和{0}平均值{1}最大整数{2}最小整数{3}", num,num/a,max,min );
你的代码已经实现了从一个整数数组中取出最大整数,最小整数,总和,平均值的功能,不过在计算最小值时有一个小错误。应该将min初始化为数组的第一个元素,否则会出现错误的结果。以下是修正后的代码:
```
Console.WriteLine("请输入一个几位数的数组");
int a = int.Parse(Console.ReadLine());
int[] b = new int[a];
int num = 0;
int max = 0;
int min = int.MaxValue; // 将min初始化为int类型的最大值
for (int i = 0; i < a; i++)
{
Console.WriteLine("输入第{0}个数", i + 1);
int c = int.Parse(Console.ReadLine());
b[i] = c;
num += c;
max = max > c ? max : c;
min = min < c ? min : c;
}
Console.WriteLine("总和{0}平均值{1}最大整数{2}最小整数{3}", num, num / a, max, min);
```
从一个整数数组中取出最大整数,最小整数,总和,平均值不用int.MaxValue
可以使用以下代码实现:
```csharp
int[] array = { 1, 2, 3, 4, 5 };
// 最大值
int max = array[0];
foreach (int num in array)
{
if (num > max)
{
max = num;
}
}
// 最小值
int min = array[0];
foreach (int num in array)
{
if (num < min)
{
min = num;
}
}
// 总和
int sum = 0;
foreach (int num in array)
{
sum += num;
}
// 平均值
double average = (double)sum / array.Length;
Console.WriteLine("最大值:" + max);
Console.WriteLine("最小值:" + min);
Console.WriteLine("总和:" + sum);
Console.WriteLine("平均值:" + average);
```
输出结果为:
```
最大值:5
最小值:1
总和:15
平均值:3
```
阅读全文