Как отсканировать и распечатать массив с максимум 20 переменными? - PullRequest
0 голосов
/ 13 апреля 2019

Как в С сканировать распечатку массива из 20 чисел, заданных пользователем.

Пример желаемого результата: Введите данные: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1516 17 18 19 20 Введенные данные: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

Это то, что у меня есть для моего цикла:

for (i = 0; i <= 20; i++){
  scanf("%d", &arry[i]);
}

Тем не менее, он продолжает запрашивать 21 вход до завершения цикла.

Ответы [ 2 ]

1 голос
/ 13 апреля 2019

Все хорошо, кроме этого =. Это значит:

Выполнить FOR-LOOP от 0 до 20.

Что означает всего 21 значений. Просто удалите это =, и все готово:

for (i = 0; i < 20; i++)
{
  scanf("%d", &arry[i]);
}
0 голосов
/ 14 апреля 2019
for (i = 0; i < 20; i++){
  scanf("%d", &arry[i]);
}

Мы всегда должны помнить, что когда мы объявляем массив размером n, то выделяется массив из n элементов с индексами от 0 до n-1. Нам не следует обращаться к тем ячейкам памяти, которые нам не выделены. C не позволяет вам этого делать, ваша программа может аварийно завершить работу. Хотя ваш компилятор может не выдавать никаких сообщений об ошибках.

Это хорошая практика.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...