版本一:
#include<stdlib.h>
#include<stdio.h>
#include<time.h >
int rand1(); //这个函数用于随机一个数
void guess(int a,int b); //判断输入的数与答案是否相同
void main()
{
int a1,b; //变量a1接受用户输入的数,变量b是系统随机数
int i=0; //用于计算猜测了多少次
b=rand1()+1; //随机数 范围1----100
printf("输入数字\n");
do
{
scanf("%d",&a1);
guess(a1,b);
i++;
} while(a1!=b);
printf("一共猜了%d次\n",i);
system("pause");
}
int rand1()
{
int i;
srand(time(NULL)); //需要头文件time.h 支持,利用时间做参数,这样可以随机出完全随机数
i=rand()%100; //完全随机出0到99的整数
return i;
}
void guess(int a,int b) //比较a,b是否匹配的函数
{
if(a==b)
{
printf("正确\n");
}
else if(a<b)
{
printf("输入过小\n");
}
else
{
printf("输入过大\n");
}
}
版本二:
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#define NO 0
#define YES 1
int main(void)
{
int guess_value=-1;
int number;
int nbr_of_guess;
int done=NO;
printf("\n\n\t\t\t\t!!!猜数游戏!!!\n");
srand((unsigned)time(NULL));
number=rand();
//printf("答案为: %d",number);
nbr_of_guess=0;
while(done==NO)
{
printf("\n输入一个0到%d的数: ",RAND_MAX);
scanf("%d",&guess_value); //得到一个数
nbr_of_guess++;
if(number==guess_value)
{
done=YES;
}
else
if(number<guess_value)
{
printf("\n你猜的数高了!");
}
else
{
printf("\n你猜的数低了!");
}
}
printf("\n\n恭喜你猜对了!你一共猜了%d次!",nbr_of_guess);
printf("\n\n那个数为%d\n\n",number);
return 0;
}
![](http://hi.csdn.net/attachment/201111/1/0_1320154353XAJU.gif)