通过猜数字游戏,来体会rand函数和srand函数的用法,以及do while循环的应用
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
void menu()
{
printf("***********************\n");
printf("***********************\n");
printf("**1.play 0.exit******\n");
printf("***********************\n");
}
void game()
{
int random_num = rand()%100+1; //生成一个随机数,[0,n]的数rand()%(n -0)+1;
//[m,n]范围,rand() %(n-m+1)+m;
int input = 0;
while(1) //例如生成100以内的数rand()%100+1;
{ //生成[30,50]之间的数rand()%(50-30+)+30;
printf("请输入一个数字:\n"); //它的头文件是sdtlib.h
scanf("%d",&input);
if(input>random_num)
{
printf("猜大了\n");
}
else if(input<random_num)
{
printf("猜小了\n");
}
else
{
printf("恭喜你,猜对了\n");
break;
}
}
}
int main()
{
int input = 0;
srand((unsigned)time(NULL)); //srand函数设置rand函数产生随机种子,引用time.h
do //格式,上行所示,如果不用它,在调用rand函数时,产生的随机种子都是1;
{ //则生成的随机数也是相同的
menu();
printf("请选择:\n");
scanf("%d",&input);
switch(input)
{
case 1:
game();
break;
case 0:
break;
default:
printf("选择错误\n");
break;
}
}
while(input);
return 0;
}