2012-10-21 3 views
4

Я хочу попытаться получить строку чисел и посчитать их и сохранить их в массиве. Я хочу иметь пользовательский ввод числа до 100 и я хочу программу, чтобы иметь возможность отделить их пробелами и сосчитать их в C#Как получить ввод, разделенный пробелами

Пример: 98 92 86 92 100 92 93

Пространства будет единственный разделитель, и он будет считать 7 классов и хранить их в массиве, но я не уверен, как это сделать на самом деле.

+1

это реальный ответ: http://stackoverflow.com/questions/28070113/read-numbers-from-the-console-given-in-a-single-line-separated-by-a-space – Ali

ответ

1

Поскольку вы хотите использовать Array, используйте функцию Split.

string x = "98 92 86 92 100 92 93"; 
string[] val = x.Split(' '); 
int totalCount = val.Length; 

или лучший способ сделать это с помощью LINQ, который автоматически преобразует в массив целых чисел

string x = "98 92 86 92 100 92 93"; 
int[] y = x.Split(' ').Select(n => Convert.ToInt32(n)).ToArray(); 
int totalCount = y.Length; 
2

Не получить пустые записи в случае 2 пространств

var ints = input.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries) 
        .Select(i => int.Parse(i)) 
        .ToList(); //or ToArray() whichever you want 
+0

Список не является массивом. – dfrevert

+0

Я думаю, что пользователь хочет массив. –

+0

@dfrevert действительно? –

Смежные вопросы