欢迎光临
我们一直在努力

猜数字游戏

食用指南:

本篇文章介绍了如何利用循环、分支语句和函数实现猜数字小游戏。

–欢迎各位交流–


1.构思主函数内容

  主函数可大致分为3部分:

(1)菜单

(2)选择对应数字进入/退出游戏

(3)游戏内容


2.游戏部分

2.1 rand函数

  想要猜随机数,那么就要生成一个随机数,这时候就需要用到rand函数,这个函数是可以生成随机数的。

原型:int rand (void);

  • rand函数会返回一个伪随机数(通过算法生成的,真正的随机数是无法预测的)。
  • rand函数使用需要包含一个 #include <stdlib.h> 的头文件。

  但是使用rand()函数会发现,它生成的随机数每次都是相同的,如果要改变这个值,我们就要知道rand()函数生成随机数是根据一个“种子”来进行运算生成的,所以要改变每次生成随机数的值,我们就要不断改变种子的值。

2.2 srand函数

c语言中提供了一个函数叫srand,用来初始化随机数的生成器

原型:void srand (unsigned int);

  我们使用srand函数在rand函数前,通过srand函数的参数seed来设置rand函数生成随机数时候的种子,这样变化种子,rand()函数生成的随机数也就随之改变了。

2.3 time

  那么怎么改变srand函数的seed参数呢?这时候我们就要用到time()函数了。

  在c语言中,我们一般使用程序运行的时间作为种子,因为时间是时刻在变化的。

  而time函数就可以获得这个时间

  • 原型:time_t time (time_t* timer);
  • time函数 会返回当前的日历时间,其实返回的是1970年1月1日0时0分0秒到现在程序运行时间之间的差值。如果timer是NULL,就只返回这个时间的差值。这个时间差也被叫做:时间戳
  • time函数使用时需要包含头文件 #include <time.h>

如果只让time返回时间戳,我们可以写成 time(NULL)

由于其返回的是int类型,而srand需要unsigned int类型,我们就可以强制转换写成:

srand((unsigned int)time(NULL));

注意:srand函数不需要频繁调用,一次运行的程序中调用一次就够了。

2.4设置随机数范围

生成0-99的随机数可以写成: rand()%100;     //除以一百余数在0-99之间

生成1-100的随机数就可以写成:  rand()%100+1;

这里给出一个公式:生成a-b的随机数,可以写成: a+rand()%(b-a+1);


3.编写程序

主函数:

菜单:

游戏:

这里可以像上面创建俩个新函数将菜单和游戏部分写在主函数外面,然后调用。也可以直接将内容写在主函数对应位置,这样写比较美观。这里有一部分涉及后面函数的部分,会使用即可。


以上就是本篇全部内容

“我们未来见”

–Promising–

赞(0)
未经允许不得转载:171主机测评 » 猜数字游戏
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址