Leyendo desde el archivo usando fgets

Estoy leyendo del archivo de formato

1 32 43 23
32 43
123 43 54 243 
123 2222
2

Aquí está mi fragmento de código.

string[100];
while(!feof(fp))
    fgets(string,100,fp)

Ahora, cuando pongo cada cadena, en la última cadena recibo repetición y algunas ambigüedades más (como si algo más también se imprime, digamos 123 más o menos).

¿Cómo resolver este problema