Apologizes I am very inexperienced with C. I have the following code: 

```
char * a[BUF_SIZE]; 

scanf("%d", numberOf);
do {
    a[i] = (char *)malloc(MAX_LINE_LEN + 1);
    scanf("%s", a[i]);
    ++i;
} while(i < numberOf);

```

The idea is simple, read two inputs from stdin using scanf, the first being a single int, followed by some array of strings. Scanf works independently in both cases e.g. scanf("%d", numberOf) will store a digit and scanf("%s", a[i]) will store a set of strings into the array. However in conjunction reading an integer first into numberOf causes a segfault when reading in a set of strings. My question is why? I know its generally bad practice to use scanf, but I fail to see how reading in multiple inputs from stdin can cause a segfault in the resulting code. Much Thanks!