Dlaczego ta tablica ma wszystkie pozostałe wartości zainicjowane na zero?

Witam jestem początkującym wJęzyk programowania C, ostatnio zacząłem się uczyćtablice, Studiowałem, że domyślnie wszystkie wartości w tablicy int sąŚmieci.

Dlaczego więc w tych dwóch przypadkach otrzymuję różne wartości.

Przypadek 1

int arr[5];

w tym przypadku od arr [0] do arr [4] będziemy mieli wartości śmieci, ale w następnym przypadku.

Przypadek-2

int arr[5] = {1};

w tym przypadku arr [0] będzie miało wartość 1, a pozostałe od arr [1] do arr [4] będą miały wartość 0.

Moje pytanie brzmi: kiedy w przypadku-1 każda nie zainicjalizowana lokalizacja tablicowa ma śmieci, a następnie w przypadku-2 pozostałe niezainicjowane lokalizacje tablicowe mają wartość 0 jako wartość domyślną.

questionAnswers(4)

yourAnswerToTheQuestion