#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
void play_game()//猜数字游戏实现
{
//1.生成一个随机数
int ret=rand()%100+1;//设置了随机种子之后配合rand产生一个随机数,生成范围:0-32769
//但rand生成的范围过大,对100取模后+1,使随机范围为1-100
while (1)
{
printf("请输入你猜的数:>\n");
int a = 0;
scanf("%d", &a);
if (a > ret)
{
printf("你猜的数字大了,请重新猜数字:>\n");
}
else if (a < ret)
{
printf("你猜的数字小了,请重新猜数字:>\n");
}
else
{
printf("恭喜你,猜对了\n");
printf("谜底是 %d \n", ret);
break;
}
}
}
void menu()//菜单
{
printf("********************************\n");
printf("**********1.play game***********\n");
printf("**********0.exit****************\n");
printf("********************************\n");
}
int main()
{
int input = 0;
srand((unsigned int)time(NULL));//time(NULL)作用是返回一个现在时间秒数,返回类型是time_t
//而srand的类型为unsigned int,所以需要强制类型转换
//srand头文件为 <stdlib.h>,time头文件为 <time.h>
do
{
menu();
printf("请输入一个数:>");
scanf("%d", &input);
switch (input)
{
case(1):
printf("即将进入猜数字游戏:>\n");
play_game();
break;
case(0):
printf("成功退出游戏!\n");
break;
default:
printf("输入错误,请重新输入:>\n");
break;
}
} while (input);
return 0;
}