#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
int magic, guess, ret, count = 0;
srand(time(NULL));
magic = rand() % 100 + 1;
do{
count++;
printf("The %dth guess:", count);
ret = scanf("%d", &guess);
while (ret != 1)
{
while (getchar() != '\n');
printf("Input error, please guess a magic number:");
ret = scanf("%d", &guess);
}
if (guess > magic)
{
printf("Wrong, big, please guess again.\n");
}
else if (guess < magic)
{
printf("Wrong, small, please guess again.\n");
}
else
{
printf("`Great, you gu`ess right.\n");
}
}while (guess != magic);
printf("Guess %d times.\n", count);
// printf("Hello, World!\n");
return 0;
}
注意这个例程中srand(time(NULL)); magic = rand() % 100 + 1;是为了获取100以内随机数。
while (getchar() != ‘\n’);
printf(“Input error, please guess a magic number:”);
ret = scanf("%d", &guess);
这三句是为了清除scanf内的非法输入。