【C语言】猜数字游戏

猜数字游戏要求

  1. 电脑会生成一个随机数
  2. 猜大小(给出大小提示)
  3. 次数不限

函数说明

1. rand() 函数

rand()函数: 生成一个随机数。
会随机返回一个随机整数0~32767
在头文件 stdlib.h
(Use the srand function to seed the pseudorandom-number generator before calling rand)
在调用rand之前,要使用 srand 函数去设置那个随机数的生成器。如果不使用 srand 则每重新运行生成的随机数一样。
若想要输出的数在0~100之间,只要 rand()%100+1

2. 时间戳:

当前计算机的时间 -(减) 计算机的起始时间(1970.1.1 0:0:0) = (…)秒

3. time() 函数

time()函数: 获取系统时间
time_t time(time_t*timer); time_t类型—>本质上就是长整型
在头文件 time.h

4. srand() 函数

srand()函数:设置一个随机起点
void srand(unsigned int seed); ← ()里面是整形
一般拿时间戳来设置随机数的生成起始点
在整个代码中设置一次就行,一般在主函数设置一次就行。不要频繁的调用。

代码

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
void menu()
{
	printf("————————————————\n");
	printf("**    1.开始游戏   0.结束     **\n");
	printf("————————————————\n");
}
void game()
{
	//1.生成一个随机数 ret :
	int ret=0,i;
	ret=rand()%100+1;//专门用来生成随机数的函数、rand()%100+1 表示随机数在0~100之间
	printf("****\n");
	//2.猜数字:
	while(1)
	{
		printf("猜数字: ");
		scanf("%d",&i);
		if(i>ret)
			printf("大了\n");
		else if(i<ret)
			printf("小了\n");
		else
		{
			printf("!!猜对了!!\n");
			break;
		}
	}
}
int main()
{
	srand((unsigned int)time(NULL)); //void srand(unsigned int seed) 所以要强制类型转换,time(指针)所以用NULL空指针
	int input;
	do //游戏至少要进去一次
	{
		menu();
		printf("请选择:");
		scanf("%d",&input);
		switch(input)
		{
		case 1:
			game();break;
		case 0:
			printf("结束游戏\n");break;
		default:
			printf("输入错误\n");break;
		}
	}while(input);	//input为1或者其他值的时候是 真 ,继续循环。为0的时候跳出循环。这样可以多次玩
	return 0;
}

运行结果👇👇
猜数字

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王某壬

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值