scanfの代わりに、fgets+sscanfでラップしたgetscanfでも書けばいいんじゃないの。