在C#中存储来自用户响应的拆分值

时间:2016-05-30 01:16:40

标签: c# split user-input

我正在尝试创建一个成绩计算器,但我完全不确定如何编译代码来执行此操作。

到目前为止,我已经能够分割用户的响应,但现在我需要知道如何进行这些拆分并将它们用作单独的值以创建平均值。我完全不知道怎么做到这一点,我现在已经在网上搜索了2天没有运气。

Console.WriteLine ("User response seperated by commas goes here.");
string response = Console.ReadLine ();
Char delimiter = ',';
string[] splitResponses = response.Split (delimiter);

1 个答案:

答案 0 :(得分:1)

  

我需要知道如何分割并将它们分开使用   值以创建平均值。

不确定 的意思是接受这些拆分并将它们分开使用  值 ,结果是一个数组,你可以使用像splitResponseses[0]

这样的索引

要计算您需要将它们转换为ints(或相应类型)的平均值,并计算平均值。

string[] splitResponses = response.Split (delimiter);     // Split string

int sum=0; 
foreach(string s in splitResponses)
{
    var valueInt = int.Parse(s); // convert string to an int.

    sum+= valueInt;   
}   

double average = (double)sum/splitResponses.Length;

使用Linq扩展程序的另一个简单解决方案。

int[] splitResponses = response.Split (delimiter)     // Split string
                               .Select(int.Parse)     // Convert To int value; 
                               .ToArray();

现在您可以使用

计算平均值
splitResponses.Average();   // Average
splitResponses.Sum();       // Sum