前言:
学习很苦,游戏来补 这里是用C语言实现的一个简单的猜数字游戏,一是为了巩固自己的知识,二是为了给枯燥的学习过程增加点趣味,可以加强我们学习C语言的热情。 要求: 1.生成1~100的随机数; 2.对猜测结果提出反馈,直到猜对为止
原型如下:
int rand (viod)
要想生成随机数,首先需要一个rand函数,它会返回一个伪随机数,范围在0-RAND_MAX之间,其实就是0~32767(大部分编译器中) 其次,rand函数需要一个头文件:
stdlib.h
rand函数生成的是伪随机数,并不是真正的随机数,是通过某种算法实现的。它是对一个叫“种子”的基准值进行运算生成的随机数,如果要生成不同的随机数,要让种子变化
srand函数可以初始化随机数,原型如下:
void srand (unsigned int seed);
先通过srand函数的参数seed设置rand函数生成随机数的种子,使种子变化,进而生成真正的随机数
时间是无时无刻在发生着变化,所以一般让time作为种子 原型如下:
time_t time (time_t* timer);
它同样需要一个头文件:time.h
为了方便大家观看,博主将代码分成三部分
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
void menu()
{
printf("**************************\n");
printf("**** 1.play ****\n");
printf("***** 0.exit *****\n");
}
void game()//游戏实现过程
{
int r = rand() % 100 + 1;//规定随机数范围:1~100
int guess = 0;
while (1)
{
printf("请猜数字>:");
scanf("%d", &guess);
if (guess < r)
{
printf("猜小了\n");
}
else if (guess > r)
{
printf("猜大了\n");
}
else
{
printf("恭喜你,猜对了\n");
break;
}
}
}
int main()
{
int input = 0;
srand((unsigned int)time(NULL));
do
{
menu();//函数的调用
printf("请选择:>");
scanf("%d", &input);
switch (input)
{
case 1:
game();//函数调用
break;
case 0:
printf("退出游戏\n");
break;
default :
printf("选择错误,请重新选择\n");
break;
}
} while (input);
return 0;
}
执行结果展示:
总结:还是那句话,学习很苦,游戏来补。博主以后会多多更新小游戏的哦,喜欢的小宝可以给博主来个三连哦。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有