楼上有毛病 不解释
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
#include <math.h>
int input()//判断下输入
{
char a[10];
int i, len, num = 0;
gets(a);
len = strlen(a);
for(i = 0; i < len; ++i)
if(a[i] < '0' || a[i] > '9')
return -1;
else
num += (a[i] - '0')*pow(10.0, len - i -1);
// printf("%d", num);
return num;
}
void main()
{
int i,a,p=1,q=100;
srand((unsigned)time(NULL));
i=1+rand()%100;
printf("\1猜数字游戏\1\n");
printf("请输入1~100的任意个数:\n");
do
{
a = input();
if(a>=1&&a<=100)
{
if (i>a)
{
printf("过小,该数介于%d~%d,请重新输入:\n",a,q);
p=a;
}
if (i<a)
{
printf("过大,该数介于%d~%d,请重新输入:\n",p,a);
q=a;
}
}
else
printf("您输入的数字有误,请重新输入\n");
}
while (i!=a);
printf("i=%d恭喜你,猜对了。\n",a);
}
给你个差不多的,具体你要怎么弄,自己去搞吧