>>62
ソース見ていいたい事分かった・・・気がする
極力元ソース変えないようにしたけどこれではダメ?
#include <stdio.h>
#include <string.h>
int main(void)
{
int num = 0;
char c,buf[5];
for (;;) {
printf("整数を入力してください : ");
fgets(buf, sizeof(buf), stdin);
/* バッファサイズをオーバーした場合、stdinをクリアし、再入力 */
if (strchr(buf, '\n') == NULL) {
scanf("%*[^\n]%*c");
/* 正常に読み取れた場合 */
} else {
if (sscanf(buf, "%d", &num) != EOF) {
break;
}
}
fprintf(stderr, "入力でエラーが発生しました\n再入力してください\n");
}
printf("num = %d\n", num);
return 0;
}