当前位置: 首页 > wzjs >正文

台州路桥做网站的公司有哪些seo与sem的区别

台州路桥做网站的公司有哪些,seo与sem的区别,wordpress搜索设置,万网商标注册前面我们已经学习了C语言常见概念,数据类型和变量以及分置于循环的内容,现在我们可以将这些内容结合起来写一个有趣的小游戏。下面正式开始我们今天的主题——猜数字游戏的实现。 猜数字游戏的要求: 1.电脑自动生成1~100的随机数。 2.玩家…

前面我们已经学习了C语言常见概念,数据类型和变量以及分置于循环的内容,现在我们可以将这些内容结合起来写一个有趣的小游戏。下面正式开始我们今天的主题——猜数字游戏的实现。

猜数字游戏的要求:

1.电脑自动生成1~100的随机数。

2.玩家猜数字,猜数字的过程中,根据猜测的数据大小给出大了或小了的反馈,知道猜对,游戏结束。

看到这两个要求,我们首先想到的就是,随机数如何产生?

一、随机数的生成

1.rand

C语言提供了一个函数叫rand,这个函数可以生成随机数,函数原型如下:

int rand (void);

rand函数会返回⼀个伪随机数,这个随机数的范围是在0~ RAND_MAX 之间,这个RAND_MAX的⼤⼩是依赖编译器上实现的,但是⼤部分编译器上是32767。
rand函数的使用需要包含一个头文件<stdlib.h>。
我们先来测试一下rand函数,调用多几次,生成5个随机数。
我们先运⾏⼀次,看看结果,再运⾏⼀次再看看结果,多运⾏⼏次呢?
可以看出这两次生成的随机数是一样的,这就说明有问题了。
如果再深⼊了解⼀下,我们就不难发现,其实 rand 函数⽣成的随机数是伪随机的,伪随机数不是真正的随机数,是通过某种算法⽣成的随机数。真正的随机数的是⽆法预测下⼀个值是多少的。⽽ rand 函 数是对⼀个叫“种⼦”的基准值进⾏运算⽣成的随机数。
之所以前⾯每次运⾏程序产⽣的随机数序列是⼀样的,那是因为rand函数⽣成随机数的默认种⼦是1。如果要⽣成不同的随机数,就要让种⼦是变化的。
2.srand
C语⾔中⼜提供了⼀个函数叫 srand,⽤来初始化随机数的⽣成器的,srand的原型如下:
void srand (unsigned int seed);
程序中在调⽤ rand 函数之前先调⽤ srand 函数,通过 srand 函数的参数seed来设置rand函数⽣成随机数的时候的种⼦,只要种⼦在变化,每次⽣成的随机数序列也就变化起来了。
那也就是说给srand的种⼦是如果是随机的,rand就能⽣成随机数;在⽣成随机数的时候⼜需要⼀个随机数,这就⽭盾了。
3.time
在程序中我们⼀般是使⽤程序运⾏的时间作为种⼦的,因为时间时刻在发⽣变化的。
在C语⾔中有⼀个函数叫 time ,就可以获得这个时间,time函数原型如下:
time_t time (time_t* timer);
time 函数会返回当前的⽇历时间,其实返回的是1970年1⽉1⽇0时0分0秒到现在程序运⾏时间之间的差值,单位是秒。返回的类型是time_t类型的,time_t 类型本质上其实就是32位或者64位的整型类型。
time函数的参数 timer 如果是⾮NULL的指针的话,函数也会将这个返回的差值放在timer指向的内存中带回去。
如果 timer 是 NULL,就只返回这个时间的差值。time函数返回的这个时间差也被叫做:时间戳。
time函数的时候需要包含头⽂件:time.h
如果只是让time函数返回时间戳,我们就可以这样写:
time(NULL);//调⽤time函数返回时间戳,这⾥没有接收返回值
根据上面所述,我们可以将代码改进如下:
现在运行几次看看结果如何。
可以很明显的看出两次结果不相同。
srand函数是不需要频繁调⽤的,⼀次运⾏的程序中调⽤⼀次就够了。
根据游戏要求,我们要生成1~100之间的随机数,可是上面我们生成的数字是在0~32767之间的数字,那么我们该如何生成1~100之间的数字呢?
4.设置随机数的范围
如果我们要⽣成0~99之间的随机数,⽅法如下:
rand() % 100;//余数的范围是0~99
如果要⽣成1~100之间的随机数,⽅法如下:
rand() % 100 + 1;//%100的余数是0~99,0~99的数字+1,范围是1~100
如果要⽣成100~200的随机数,⽅法如下:
100 + rand() % (200 - 100 + 1)
//余数的范围是0~100,加100后就是100~200
所以如果要⽣成a~b的随机数,⽅法如下:
a + rand() % (b - a + 1)
很简单易懂吧,这样就可以生成1~100的随机数了,如下:
二、猜数字游戏的实现
1.基本思路
基本使用while、switch、case循环结合使用。首先,上来就打印菜单,显得逻辑清晰;然后根据我们的选择,选择进入游戏,就需要产生一个随机数,意不要把产生随机数的环节加入到while循环里面,不然每次猜都会生成一个随机数那那估计永远都猜不到,因为rand函数的种子是以time函数的返回值为参数的,时间戳在随时变化,那么如果放到循环里面每次判断一轮产生的rand的返回值都不一样随机数也就在变化,除非你运气好的爆炸,能够一次就猜中;再接着我们就可以开始猜数字了,判断我们猜大了还是猜小了直到猜对为止,或者我们可以限制猜的次数,正如下面代码实现的那样。
2.代码实现
3.如果想要增加难度,加上次数限制,代码如下:
新手入门的小游戏,应该算是比较简单的吧,希望能对大家有帮助。
http://www.dtcms.com/wzjs/173992.html

相关文章:

  • 德阳住房和城乡建设厅网站seo的培训班
  • 许昌市住房和城乡建设局网站百度seo优化分析
  • 网站的营销策略seo课堂
  • dw网站模板seo优化一般优化哪些方面
  • 在招聘网站做电话销售怎么样万网域名注册
  • 长春网站建设兼职app代理推广合作
  • 电子商务网站开发岗位seo网站排名优化教程
  • wordpress不能安装插件东莞整站优化排名
  • 科技公司网站设计服务鱼头seo软件
  • 网页平面设计教学网站的seo如何优化
  • 免费的网站管理系统大数据培训包就业靠谱吗
  • 设计网站作品欣赏有那些网站b2b平台推广网站
  • 为什么网站打开老是提示建设中站长网站查询
  • 网站建设广州公司哪家好关键词搜索工具app
  • 网络销售怎么一直招人搜索引擎优化举例说明
  • 专门查大学的网站近期的重大新闻
  • 宁波专业网站推广平台咨询外链查询工具
  • 广东网站开发推荐重大军事新闻最新消息
  • 做矿产公司的网站小程序开发公司
  • 网站的做用免费网页设计制作网站
  • 江宁网站建设怎么制作网址
  • 做手机网站要多少钱今天的新闻 最新消息
  • 基于web的网站设计与实现百度问答app下载
  • 网站上做扫一扫app推广接单平台有哪些
  • 门户网站如何做性能测试济南seo公司
  • 凡科网站建站网站优化外包推荐
  • 做网站虚拟主机搜索引擎优化专员
  • 仕德伟做的网站宁波seo推广优化怎么做
  • 新疆交通建设网站百度竞价什么意思
  • 做网络写手 哪个网站比较好优化关键词是什么意思