int array[20];
int i = 0;
int d = 0;
while ((c = fgetc(fp) != EOF) {
if (isdigit(c)) {
d = d * 10 + c - '0';
} else if (c == ',' || c == '\n') {
array[i++] = d;
d = 0;
}
}

fgetc より getc じゃないか?