This simple code:

```
int main()
{
   srand(time(NULL));

   const int size = rand() % RAND_MAX;
   int numbers[size];

   int i;
   for (i = 0; i < size; i++)
      numbers[i] = rand() % RAND_MAX;

   for (i = 0; i < size; i++)
      printf("numbers[%d]=%d\n", i, numbers[i]);
}

```

doesn't compile because the size of array isn't `const` value.

Why does that happen?

How can I fix it?