[1] 授業単元: プログラミング
[2] 問題:下記 標準入力で英文を入力して、英文内の動詞が辞書に対応していたら
過去形で、対応していなければそのままの形で英文を出力できるようにせよ。
なお、入力は一行単位で入力できるようにしなさい。
[3] 環境
 [3.1] OS: WindowsXP
 [3.2] コンパイラ名とバージョン: BorlandC++
[4] 期限: 1月10日
scanfで書いてみたんですが、fgetsを使う?一行入力がわかりません。
なにとぞお願いします。

#include <stdio.h>
#include <string.h>

main()
{
int i;
char buf[100];
static char *dic[10][2] = { /*辞書*/
{"eat","ate"},{"move","moved"},{"copy","copied"},
{"is","was"},{"walk","walked"},{"look","looked"},
{"hit","hit"},{"smile","smiled"},{"sea","saw"},{"play","played"}};

while (scanf("%s",buf) != EOF){
for(i=0; i<10; i++){
if(strcmp(buf,dic[i][0]) == 0) break;
}
if(i==10)
printf("%s\n", buf);
else printf("%s\n", dic[i][1]);
}
}