栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

猜1-100数字游戏

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

猜1-100数字游戏

逻辑是:电脑随机输出值 ,我们来猜 ,猜大了 告诉我们猜大了 ,猜小了 告诉我们猜小了

1.先在主函数里用do while 来实现至少一次游戏

void menu()
{
	printf("=============================n");
	printf("||          1.play         ||n");
	printf("||          1.exit         ||n");
	printf("=============================n");
}
int main()
{
	int input;
	do
	{
		menu();
		printf("请选择:n");
		scanf("%d", &input);
		switch (input)
		{
		case 1:
			printf("开始游戏n");
			play();
			break;
		case 0:
			printf("退出游戏n");
			break;
		default:
			printf("输入错误,请重新输入n");
			break;
		}
	} while (input);
}

假如输入1,猜对数字后,break跳出循环 ,进入while(input),再次选择input, 若选择0退出游戏,若选择其他数字再次进入do while 循环

 

2,电脑生成随机值,用到rand函数 

在cplusplus查到可知:

RAND_MAX转到定义得:(记得加头文件)

 

 即随机数范围0~RAND_MAX  0-32767

1,0版

 

 

两次调试结果一样

 

 即在使用rand函数前还需调用srand

 

通过以上调整可以发现·: srand参数随机,电脑也会给个随机值

即想到时间戳

 即电脑此时此刻运行代码的时间和计算机起始时间的差值  即调用time函数

 参数为指针,不想用这个参数 直接空指针就可以了  我们现在只想要他的返回值

类型为 time_t 转到定义

 

 

 参数类型为unsigned int  ,即time的返回类型是unsigned int ,强制转换

 

又因为

 我们发现几次随机值是一样的 则srand只需调用一次最好 放在rand前面即可

最终代码

#include 
#include 
void menu()
{
	printf("=============================n");
	printf("||          1.play         ||n");
	printf("||          1.exit         ||n");
	printf("=============================n");
}
//rand生成一个随机数 0-RAND_MAX 0-32767
void play()
{
	int guess;
	int ret = rand()%100+1;
	while (1)
	{
		scanf("%d", &guess);
		if (guess < ret)
		{
			printf("猜小了n");
		}
		else if (guess > ret)
		{
			printf("猜大了n");
		} else {
			printf("恭喜你,猜对了n");
			break;
		}
	}

}
int main()
{
	int input;
	srand((unsigned int)time(NULL));//设置随机数生成器

	do
	{
		menu();
		printf("请选择:n");
		scanf("%d", &input);
		switch (input)
		{
		case 1:
			printf("开始游戏n");
			play();
			break;
		case 0:
			printf("退出游戏n");
			break;
		default:
			printf("输入错误,请重新输入n");
			break;
		}
	} while (input);
}

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1021749.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号