For循环不针对每个输入进行迭代C#-初学者问题
我是C#的新手,我正在尝试计算到目前为止我得到的用户的4个数字的平均值,但我在输入阶段遇到了问题。我想使用for循环对每个数字进行迭代,打印“输入数字1:”>用户输入2,其累积。。。然后是要求下一个“输入数字2”相加,以此类推,直到所有的数字都被相加。但是,不是一次取一个数字。该程序的输出为: 数字1数字2数字3数字4: 问题:为什么不在每次迭代时停止以允许用户输入一个数字For循环不针对每个输入进行迭代C#-初学者问题,c#,for-loop,input,C#,For Loop,Input,我是C#的新手,我正在尝试计算到目前为止我得到的用户的4个数字的平均值,但我在输入阶段遇到了问题。我想使用for循环对每个数字进行迭代,打印“输入数字1:”>用户输入2,其累积。。。然后是要求下一个“输入数字2”相加,以此类推,直到所有的数字都被相加。但是,不是一次取一个数字。该程序的输出为: 数字1数字2数字3数字4: 问题:为什么不在每次迭代时停止以允许用户输入一个数字 namespace Hello { class Program { static void
namespace Hello
{
class Program
{
static void Main(string[] args)
{
double sum;
for (int i = 1; i <= 4; i++)
Console.Write("Enter number {0}:", i);
sum = +Convert.ToDouble(Console.ReadLine());
}
}
}
名称空间你好
{
班级计划
{
静态void Main(字符串[]参数)
{
双和;
对于(inti=1;i请尝试以下方法:
double sum;
for (int i = 1; i <= 4; i++) {
Console.Write("Enter number {0}:", i);
sum += Convert.ToDouble(Console.ReadLine());
}
双和;
对于(int i=1;i),您的问题是carina下面的答案,通过不使用花括号,您只执行了行Console.Write,而不是Console.Write和readline。因此,您的代码的流程类似于1到4次打印,输入数字:1..2..3..4。然后等待输入,您需要括号{}如前所述,在for
循环上。代码仅执行控制台。Write(“输入数字{0}:,i);
4次。然后它执行sum=+Convert.ToDouble(Console.ReadLine());
一次。读取最后一行后,代码退出。您需要添加Console.ReadLine()
或ReadKey
在代码退出之前,否则您将永远看不到代码应该输出的平均值,而该值似乎丢失了。