I'm quite puzzled by why my variable NumberOfArrays changes the second time through the for loop in my code. Can anyone help me out?
#include <stdio.h>
#include <cs50.h>
int main(int argc, string argv[])
{
//variable declarations
int NumberOfArrays = 0;
int arrayRack[0];
//Get number of arrays
printf("Key in the number of arrays you'd like to have\n");
NumberOfArrays = GetInt();
//Get number for each element in arrayRack[]
for(int i = 0; i < NumberOfArrays; i++)
    {
        printf("give me an int for the %i th array\n", i + 1);
        arrayRack[i] = GetInt();
        // *** on the second pass, my "NumberOfArrays" gets adjusted to my GetInt number here.  Why?
    }
//print out numbers stored in respective arrays
for(int j = 0; j < NumberOfArrays; j++)
    {
        printf("{%i}<-- number in %ith array\n", arrayRack[j], j + 1);
    }
    return 0;
}
 
     
     
    