Динамический массив вводимый через scanf - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Обыскал много тем но ответа не нашел, прошу помощи у вас, мои дорогие. Тема такая: Язык СИ, ввести числа в массив А[] не зная заранее размеры массива (знаем только что максимально значений в массиве может быть 1000 и минимально 2). Ввести кол-во чисел которые мы введем до того как мы запишем сами числа в массив мы НЕ можем (таковы условия). Числа должны быть целые. Как закончить ввод чисел в массив? Как объявить данный массив и правильно записать в него все значения (их записывает человек, т.е. их может быть сколько угодно в пределах от 2 до 1000 и они могут быть абсолютно любыми, но только целыми) Пример ввода чисел в Bash: ############## Числа: 14 16 -100 5 0 7 Массив: 14 ................ 7 ############## Буду очень благодарен за подробное объяснение

Решение задачи: «Динамический массив вводимый через scanf»

textual
Листинг программы
while( scanf("%i", &val) == 1 ){
...
}

Объяснение кода листинга программы

  1. В цикле while выполняется операция сканирования ввода с помощью функции scanf. Функция scanf пытается прочитать один целочисленный ввод (%i).
  2. Если ввод был успешным (возвращает 1), то происходит следующее: ...
  3. Если ввод был неуспешным (возвращает 0), то цикл while прекращается. Возможно, это произошло из-за неверного ввода или достижения конца файла.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 3.4 из 5
Похожие ответы