やりたいプログラムの流れとしては、
乱数生成(答え1~5000
↓
数字を入力
↓
入力された文字が10進数かどうか1~5000の範囲内かどうか判定
↓
答えの数字と入力された数字比較してどちらが大きいか判断して表示
↓
あっていた場合正解ですと表示
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <ctype.h>
int main(void)
{
int ans,exp,a,count = 1;
srand((unsigned int)time(NULL));
ans = rand()%5000+1;
//printf("%d\n",ans);//テスト用
while(count <= 20)
{
printf("数字を入力してください:");
scanf("%d\n",&exp);
if(exp <= 0)
{
printf("1~5000の間の数字を入力してください\n");
}
if(exp >= 5001)
{
printf("1~5000の間の数字を入力してください\n");
}
if(exp == ans)
{
printf("正解です\n");
break;
}
else if(exp < ans)
{
printf("答えは%dより大きいです\n",exp);
count++;
}
else
{
(exp > ans);
printf("答えは%dより小さいです\n",exp);
count++;
}
}
printf("また挑戦してください");
return(0);
}
数字を入力してください:1111
1111
答えは1111より大きいです
数字を入力してください:2222
答えは1111より大きいです
数字を入力してください:2222
答えは2222より大きいです
数字を入力してください:
と入力が1つ遅れて反応する(?)
な感じです。改善法+入力された文字が数字かどうか判定する関数について教えてください><