バイナリで書き込んだデータで試しています。

int main(void)
{
int buf[] = { 1,2,3,4,5,6,7,8,9 };
FILE *file;
file = fopen("test.dat","wb");
fwrite(buf,sizeof(buf),1,file);
fclose(file);
return 0;
}

これでデータを生成してから読み込んでいます
上のソースで読み込んだときは

1 2 3
4 5 6
7 8 9
7 8 9
7 8 9
…終わらず 、です

どうやったら 7 8 9で終えられるのか教えてください