最近闲着没事,就想着拿C语言写个小游戏玩玩。以前学过C,但好久没碰,有点手生,就从最简单的猜数字游戏开始搞起。
我先在纸上把游戏的流程大致捋捋:
- 电脑得先随机弄出一个数字来
- 我要输入一个数字
- 电脑比较这两个数字,告诉我猜大还是猜小
- 重复上面两步,直到我猜对为止
小编温馨提醒:本站只提供游戏介绍,下载游戏推荐89游戏,89游戏提供真人恋爱/绅士游戏/3A单机游戏大全,点我立即前往》》》绅士游戏下载专区
流程清楚,就开始动手写代码。先引入几个头文件,stdio.h
用来输入输出,stdlib.h
用来生成随机数,time.h
用来设置随机数种子,要不然每次生成的随机数都一样,那就没意思。
我定义几个变量,一个用来存电脑生成的随机数,一个用来存我猜的数字,还有一个用来记录我猜的次数。然后用srand(time(NULL))
设置一下随机数种子,这样每次运行程序,生成的随机数就都不一样。
生成随机数,我用的是rand() % 100 + 1
,这样生成的数字就是1到100之间的整数。这行代码我琢磨一会儿,rand()
生成的是一个很大的随机数,用它对100取余,得到的余数就是0到99之间的数,再加1,就变成1到100。
接下来就是游戏的主体部分,我用一个while
循环,只要我没猜对,就一直循环下去。循环里,先提示我输入一个数字,然后用scanf
读取我输入的数字。这里我用的是%d
,因为我输入的数字是整数。
读取完数字,就该比较大小。我用几个if...else if...else
语句。如果我猜的数字比电脑生成的数字大,就提示我“猜大”;如果小,就提示我“猜小”;如果相等,就提示我“猜对!”,并跳出循环。
每次猜完,我都把猜的次数加1。猜对之后,我把猜的次数打印出来,告诉玩家猜几次。
写完代码,我编译运行一下,还真能玩!我试几次,都能正常运行。虽然代码很简单,但还是挺有成就感的。
不过我这代码还有点小问题,比如,如果我输入的不是数字,程序就会出错。
待改进
以后有时间,再慢慢完善。比如可以增加输入检查,如果输入的不是数字,就提示重新输入,或者可以限制猜的次数,猜的次数太多,就告诉玩家游戏失败。还能整个游戏难度,让玩家选之类的!