2017-10-19 96 views
-2

嗨,我想知道是否有人可以解释如何使这种方法显示运行计数和平均值,而不是只要用户输入完数据就显示出来?Display running total

public void InScreen() 
{ 
    int count = 0; 
    double total = 0.0; 
    double average = 0.0; 
    double number; 

    Console.WriteLine("Enter the set of scores (enter 0 to indicate end of set)"); 

    number = double.Parse(Console.ReadLine()); 

    while(number != 0) 
    { 
     total += number; 
     count++; 
     number = double.Parse(Console.ReadLine()); 
    } 

    if (count != 0) 
     average = total/count; 

    Console.Beep(20000, 2000); 
    Console.WriteLine("The user has entered {0} scores.", count); 
    Console.WriteLine("The sum of scores entered = {0}", total); 
    Console.WriteLine("The average of scores entered = {0}", average); 
} 
+5

请接管你如何展示你的代码更加小心。没有缩进,它真的很难阅读。接下来,你有什么*尝试*显示运行计数和平均值?提示:你会在'while'循环中写出输出... –

+3

所以,只需在while循环中移动你的汇总代码 – musefan

+0

谢谢对不起回合,更容易然后我认为它会是 –

回答

0

只要试试这个

static void Main(string[] args) 
    { 
     try 
     { 
      StringBuilder runningtotal = new StringBuilder(); 

      int count = 0; 
      double total = 0.0; 
      double average = 0.0; 
      double number; 

      Console.WriteLine("Enter the set of scores (enter 0 to indicate end of set)"); 

      number = double.Parse(Console.ReadLine()); 
      runningtotal.Append(number.ToString()); 
      while (number != 0) 
      { 

       total += number; 
       count++; 
       number = double.Parse(Console.ReadLine()); 
       if (number!=0) 
       { 
        runningtotal.Append("+" + number.ToString()); 
       } 

      } 
      if (count != 0) 
       average = total/count; 
      Console.Beep(20000, 2000); 
      Console.WriteLine("The user has entered {0} scores.", count); 
      Console.WriteLine("The sum of scores entered = {0}", total); 
      Console.WriteLine("The average of scores entered = {0}", average); 
      Console.WriteLine(runningtotal); 
      string[] inputs = runningtotal.ToString().Split('+'); 
      Console.WriteLine("Running total"); 
      int temp=0; 
      for (int i = 0; i <inputs.Length; i++) 
      { 
       if (temp==0) 
       { 
        Console.WriteLine("{0} = {1}",inputs[i],inputs[i]); 
        temp = Convert.ToInt32(inputs[i]); 
       } 
       else 
       { 
        Console.WriteLine("{0} = {1}", inputs[i], Convert.ToInt32(inputs[i]) + temp); 
        temp = Convert.ToInt32(inputs[i]) + temp; 
       } 



      } 

      Console.ReadLine(); 
     } 
     catch (Exception ex) 
     { 
      Console.WriteLine(ex.Message); 
      Console.ReadLine(); 
     } 

     Console.ReadLine(); 
    } 

输出截图

enter image description here

Here