【发布时间】:2021-03-21 22:03:44
【问题描述】:
“正输入的总和是:”和“负输入的总和是:”部分不起作用,没有答案显示可能是什么解决方案?顺便说一句,这是一个 11 年级的问题
int i, num, sum = 0;
Console.Write("\nInput the number of elements to be stored in the array :");
num = Convert.ToInt32(Console.ReadLine());
for (i = 0; i < num; i++)
{
Console.Write("Elements - {0}:", i, num);
array[i] = Convert.ToInt32(Console.ReadLine());
}
Console.Write("The positive inputs are :");
for (i = 0; i < num; i++)
{
if (array[i] >= 0)
{
Console.Write(array[i] + ",");
array[i]++;
}
}
Console.Write("\nThe sum of positive input is :");
for (i = 0; i < num; i++)
{
if (array[i] >= 0)
{
sum += array[i];
}
}
Console.Write("\nThe negative inputs are :");
for (i = 0; i < num; i++)
{
if (array[i] < 0)
{
Console.Write(array[i] + ",");
array[i]++;
}
}
Console.Write("\nThe sum of negative input is :");
for (i = 0; i < num; i++)
{
if (array[i] < 0)
{
sum += array[i];
}
}
【问题讨论】:
-
Console.WriteLine("The sum is " +sum)?你根本没有打印总和。你不应该在对负值求和之前重置总和吗?或者您是否需要从正值的总和中提取负值?也许你只能在这个数组上循环一次?在显示它们之后增加值是否正常? -
我添加了 +sum 但它给出了错误的答案
-
你是在计算之后做的吧?
-
首先,你还没有添加代码来显示 sum,所以在 sum-calculating for-loop 结束后,你需要添加类似
Console.WriteLine(sum);的东西。其次,在计算出正数之和后,您必须使sum = 0根据需要得到负数的精确输出。 -
顺便说一句,您了解
array[i]++;的作用吗?您在每个“负输入为”和“正输入为”中都有它。它通过向数组加一来更改数组的值。所以在显示值之后,你就改变它。