三招教你搞定“猜数字小游戏”
前言:
一个游戏要有界面、有实现的函数;明确这两点之后,我们先搭建框架,之后在去完善每一个框架的细节!
第一步.编写游戏界面函数menu()和游戏的实现函数game();
代码如下:
void game() { printf("玩游戏!"); } void menu() //菜单函数 { printf("*****************************\n"); printf("**********猜数字游戏**********\n"); printf("*******1.paly 2.exit******\n"); printf("*****************************\n"); } int main() { int input; srand((unsigned int)(time(NULL))); do { menu(); printf("请选择:\n"); scanf("%d", &input); switch (input) { case 1: game(); break; case 2: printf("退出游戏!\n"); break; default: printf("输入错误,请重新输入!\n"); break; } } while (input); return 0; }
输出结果为:
第二步.完善游戏实现函数game();
代码如下:
void game() //开始玩游戏 { int guess = 0; //猜的数字 int count = 0; //统计猜的次数 int ren; //1.产生随机数 //2.时间戳:当前时间-计算机起始时间(1970.1.1.0:0:0) time_t time(time_t* timer) //srand((unsigned int)(time(NULL))); ren = rand() % 100 + 1; //设置1-100之间的随机数 //printf(“这个随机数是%d\n”, ren); while (1) { printf("请输入你认为的数:\n"); scanf("%d", &guess); if (guess > ren) { count++; printf("猜大了\n"); } if (guess < ren) { count++; printf("猜小了\n"); } if (guess == ren) { printf("恭喜你,猜对了!\n"); printf("你一共猜了 % d次\n", count); break; } } }
第三步.调试+优化=最终结果
四.最后
4.1怎么样产生随机数?
答:
(1)通过电脑自动生成一个随机数,而我们又想每次玩游戏所产生的数都不同,我们知道时间是无时无刻不在变换的,这里引入一个时间戳的概念;
(2)时间戳:等于当前时间 - 计算机起始时间(1970.1.1.0:0:0)
(3)随机数生成:rand()函数;使用之前要先设置一个起始点,srand((unsigned int)(time(NULL))),则表示以一个时间为起始点;
4.2总结
#C语言编程##C/C++##笔记#
- 其实整个小游戏实现的思路很清晰,关键在于我们要动手实际去实现它,遇到问题先思考,然后调试进行解决,你才会有很多收获。
- 本次分享就到此结束了,我们下次见😘