Массив без предопределенного размера

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

Вы можете использовать List<type>, который представляет собой коллекцию типа type без предопределенного размера. Если вы хотите использовать целые числа, используйте List<int>

ikkentim 10.09.2018 10:29

Обратите внимание, что тег visual-studio следует использовать только для вопросов об IDE Visual Studio, а не для кода, который вы пишете с его помощью.

Llama 10.09.2018 10:30

Я не понимаю этого вопроса. Если вы спросите пользователя, сколько у него чисел, то вы узнаете размер массива.

Tim Schmelter 10.09.2018 10:30

Вы уверены, что вам нужен массив?

BugFinder 10.09.2018 10:31

Вы можете попробовать ввести пользовательский ввод расщепление в массив: string[] items = Console.ReadLine().Split(new char [] {',', ' ', '\t'}, StringSplitOptions.RemoveEmptyEntries);

Dmitry Bychenko 10.09.2018 10:32
0
5
65
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Используйте список, например:

List<int> numbers = new List<int>();
numbers.Add(5);

Хотя, если вы спросите пользователя количество чисел, вы можете просто инициализировать массив до этой длины:

Console.Write("How many numbers do you have?: ");
int numberOfNumbers = int.Parse(Console.ReadLine()); // get user input, parse it
int[] items = new int[numberOfNumbers];
for (int i = 0; i < numberOfNumbers; ++i)
{
    Console.Write("Enter number: ");
    items[i] = int.Parse(Console.ReadLine());
}

Надеюсь, вы сможете применить эти примеры в своем собственном сценарии. Если у вас есть вопросы, дайте мне знать в комментариях.

Обратите внимание, что безопаснее использовать TryParse, поскольку он фактически проверяет, действительно ли номер, но для краткости ответа я использовал Parse.

Спасибо за отрицательный отзыв, любезный незнакомец :) Подскажите, что не так с моим ответом?

Llama 10.09.2018 10:30

вы помогаете превратить SO в бесплатную службу написания кода.

Selman Genç 10.09.2018 11:36

@Selman есть большая разница между тем, чтобы дать новичку, который провел небольшое исследование, но не может полностью преодолеть разрыв, и кем-то, кто представляет список требований и надеется, что кто-то напишет его для них. Я понимаю этот вопрос, поскольку кому-то просто нужен небольшой указатель.

Llama 10.09.2018 12:25

Другие вопросы по теме