Рубрики

Викторина С — 111 | Вопрос 3

Выберите лучшее утверждение для ниже:

int arr[50] = {0,1,2,[47]=47,48,49};

(A) Это не разрешено в C, и это даст ошибку компиляции
(B) Это разрешено в C согласно стандарту. По сути, он инициализирует arr [0], arr [1], arr [2], arr [47], arr [48] и arr [49] в 0,1,2,47,48 и 49 соответственно. Остальные элементы массива будут инициализированы в 0.

Ответ: (Б)
Объяснение: В C инициализация массива может быть выполнена и для выбранных элементов. По умолчанию инициализатор начинается с 0-го элемента. Конкретные элементы в массиве могут быть указаны с помощью []. Следует отметить, что остальные элементы (то есть те, которые не упомянуты в инициализации массива) будут инициализированы равными 0. Например, «int arr [10] = {100, [5] = 100, [9] = 100}» также допустимо в C. Это инициализирует arr [0], arr [5] и arr [9] в 100. Все остальные элементы будут равны 0.
Тест на этот вопрос

Рекомендуемые посты:

Викторина С — 111 | Вопрос 3

0.00 (0%) 0 votes