putsとprintfは戻り値が違うのでi = printf() しとけば大丈夫。