Lesen einer unbekannten Anzahl von Ganzzahlen aus stdin (C)

Ich muss eine Eingabedatei wie folgt lesen:

1
19 20 41 23
2
41 52 43
3
90 91 941
4
512
5

6
51 61

Jede ungerade Zeile ist eine ganze Zahl. Jede gerade Zeile ist eine unbekannte Anzahl von ganzen Zahlen.

In C ++ ist das sehr einfach

while( cin >> k ){
............
}

Ich bin nicht so an C gewöhnt, also konnte ich es nicht in C schaffen. Irgendwelche Möglichkeiten, es zu tun?