一、基本思想
在编写猜数字游戏时,应首先生成一个随机的数字,然后用户通过输入数字,系统将生成的随机数与用户输入进行比较,如果用户输入较大,则打印“猜大了”。如果用户输入与随机数相等,则打印“猜对了”,如果用户输入较小,则打印“猜小了”。
二、算法设计
- 首先要实现生成一个随机数字,要用到rand函数,基本形式如下:
rand函数没有返回值,生成的随机数是伪随机数,范围在0-rand_max之间。使用rand函数时要包含其头文件:stdlib.h
真正的随机数是完全不可预测的,而rand生成的伪随机数,在一定种子的情况下是相等的。如果让rand生成的数字随机,则要让种子随机。这时要用到srand这个函数:
也就是说,srand生成的种子是随机的,那么rand生成的数字也将是随机的。那么如何让srand生成种子随机呢?其实只要让srand生成的种子每次都相异即可,这时要用到time函数:
因为时间都是在不断变化的,因此产生的数字也是都相异的。在使用time函数时,要包含对应的头文件:time.h
这时就能让系统自动生成一个随机数了。 - 然后进行比较判断,通过if语句的判断,打印相应的语句。
如果用户输入较大,则打印:猜大了
如果用户输入相等,则打印:猜对了
如果用户输入较小,则打印:猜小了
三、代码实现