Мне просто нужно сделать простую программу, в которой у меня есть массив со случайными числами, затем я должен сделать некоторые вещи с массивом, а затем распечатать элементы в конце. Но я не знаю, что здесь происходит.
Сначала я хотел создать код, просто напечатать элементы и посмотреть, работает ли он, прежде чем делать что-либо еще.
#include <stdio.h>
int main(void) {
int nums[] = {12, 3, 54, -4, 56, 4, 7, 3};
//.....
for(int i = 0; nums[i]; i++) {
printf("nums[%d] = %d\n", i, nums[i]);
}
return 0;
}
Ирезультат был:
nums[0] = 12
nums[1] = 3
nums[2] = 54
nums[3] = -4
nums[4] = 56
nums[5] = 4
nums[6] = 7
nums[7] = 3
nums[8] = -427200144
nums[9] = 32765
Я запускал код больше раз, а 8-й и 9-й элемент всегда были случайными ... Но я имею в виду, что у меня даже не так много чисел, что здесь не так? Кроме того, я пытался с другими случайными числами, и иногда он отлично работает ...
int nums[] = {2, -10, 64, 100, 22, 4};
nums[0] = 2
nums[1] = -10
nums[2] = 64
nums[3] = 100
nums[4] = 22
nums[5] = 4
Может кто-нибудь объяснить, что здесь происходит?
Редактировать: Между тем я понял, что этот метод плох,так как, если число в массиве равно 0, то мое условие ложно, поэтому цикл for останавливается, но мне интересно, что здесь происходит, поэтому я все равно опубликую это.