从用户获取输入以填充C#中的列表

时间:2012-09-04 04:59:29

标签: c# arrays visual-studio-2010 input

好的,我刚刚开始使用C#并尝试从C ++的基本方面过渡。 我正在上课(不是为了成绩,这是一项学习任务),除了获取用户输入外,我已经设置了所有内容。我试图使用列表而不是数组,但我无法弄清楚如何让它让用户输入价格。

这是一个简单注册的项目。用户必须输入价格。这里将少于100件物品。

这是我到目前为止所拥有的:

 static void Main()
 { 
      double i;

      Console.Writeline("Enter Item Prices\n");
      List<double> items = new List<double>[i];
      Console.ReadLine(items);
      Console.WriteLine("{0}: ", i, items[i]);
      for (double i = 0; i < 100; i++)
      {
           items.Add(i);
      }
      return 0;
  }

我已经设置了所有的计算,只是无法获得价格所需的输入。我知道i的一些内容是错误的。另外,WriteLineReadLine取代coutcin,这让我感到困惑。

我只需要弄清楚如何获得价格并将它们放入我的公式中。

我将提供最佳答案道具,以帮助我的计划评论。

修改:

我需要它返回并检查用户是否要继续

3 个答案:

答案 0 :(得分:3)

订单有点搞砸了。为你修好了:

  Console.Writeline("Enter Item Prices\n");
  List<double> items = new List<double>();
  for (double i = 0; i < 100; i++)
  {
       string userInput;
       double newItem;

       // repeatedly ask for input from the user until it's a valid double
       do 
       {
           Console.Write(string.Format("Enter item #{0}: ", i));
           // read from console into userInput
           userInput = Console.ReadLine();
       } while (!double.TryParse(userInput, out newItem))

       // add the new item to the array
       items.Add(newItem);
  }

  // output all the items to the console, separated by commas
  Console.WriteLine(
      string.Join(", ", 
          items.Select(item => item.ToString())
      )
  );

答案 1 :(得分:0)

最小的例子。

 class Program
{
    static void Main(string[] args)
    {
        //reading the input and assign it to s
        string s = Console.ReadLine();
        //writing the input
        Console.WriteLine(s);
    }
}

答案 2 :(得分:0)

您可以将多个由空格分隔的项目(来自用户输入)添加到列表中,如下所示:

string[] arrItems = Console.ReadLine().Split(' ');
List<double> lstItems = new List<double>(Array.ConvertAll(arrItems, arrTemp =>
Convert.ToDouble(arrTemp)));