猜数字游戏

  • 基本功能: 在1-100中间随机生成一个整型数字,选手进行猜测,直到猜中为止,选手每猜错一次从总成绩中扣除3分,初始成绩为100,最低成绩为0;
  • 随机数字生成: 利用函数 rand() ,该函数会根据一个初始值(随机种子)经过一系列的运算产生一个数字序列,随机种子不变则该数字序列不遍,因此单纯利用 rand() 函数不能完全实现产生随机数,需要借助 srand() 函数每次来生成随机的初始值(随机种子),参数带入当前的时间戳(因为时间戳是一个每时刻都不相同的变量),srand(time(0));
  • 时间戳: 时间戳是是指从 1970年01月01日00时0分0秒开始 到目前为止的总秒数
  • 基本思想: 选手输入的数字和随机生成的数字进行对比,从而给出"大了!","小了!"的提示,直到选手猜中数字将会提示 “猜中了!”

代码不是特别简洁 还需要改进

#define _CRT_SECURE_NO_WARNINGS
#include "stdio.h"
#include "stdlib.h"
#include "time.h"// 猜数游戏,在1-100中间随机生成一个整数,选手进行猜数,直到猜中为止
// rand() 函数产生随机数
// srand() 函数产生随机种子
int GetNum(void) {int choice;printf("*********************************\n");printf("*********1-开始一局新游戏********\n");printf("*************2-结束游戏**********\n");printf("*********************************\n");printf("输入你的选择:");scanf("%d", &choice);srand(time(0));if (choice == 1) {printf("开始输入你猜的数字:");return rand() % 100 + 1;}else if (choice == 2) {return 0;}printf("您的输入非法!!!请重新输入!!!\n\n\n");return -1;
}
int main() {// 定义一个中间数字为用户输入的数字 mid ,将 mid 和随机数相比较,从而确定随机数字所在的更小范围,直到找出随机数// rand() 随机数的产生要依赖于一个初始值(随机种子),根据这个随机种子会产生一个数字序列,随机种子相同产生的数字序列相同// 因此为产生一个完全随机的数字序列,必须每次运行函数的随机种子不相同。// 我们利用随机种子设置函数 srand() 引入参数 time(0) 获取当前的时间戳,// 时间戳总不相同因此生成了完全随机的初始值,从而生成完全随机的数字序列。int mid = 1;int randnum;int score = 100;while (mid != 0) {randnum = GetNum();if (randnum != 0 && randnum != -1) {while (1) {scanf("%d", &mid);if (randnum < mid) {printf("大了!\n");score -= 3;}else if (randnum > mid) {printf("小了!\n");score -= 3;}else {printf("猜中了!\n");if (score <= 0) {score = 0;}printf("最终成绩为:%d 分\n\n\n\n", score);break;}}}else if (randnum == 0) {printf("游戏结束!!!\n");break;}}system("pause");return 0;
}

实战小项目_猜数字小游戏相关推荐

  1. 小项目之猜数字小游戏(剪刀,石头,布)

    import java.util.Random; import java.util.Scanner; public class caiquan {public static void main(Str ...

  2. python撩妹技能_猜数字小游戏python实现(可用来撩妹撩汉)

    import random import time number = random.randint(0,199) print("----------猜数字小游戏----------" ...

  3. C语言小项目之猜数字

    学习完c语言循环.选择内容,我们对c语言有个初步的认识了,让我们来实现一个小项目吧!!! 1.猜数字小项目分析: 我们利用c语言制造出随机数来猜,在只知道范围的前提下我们无非有以下三种可能,猜大了.猜 ...

  4. cpp判断输入为数字_猜数字小程序带你C语言入门

    学习编程注重实践,不少同学书看了好几章,等动手开始自己写的时候,发现还是不知从何下手.今天,我们以一个猜数字的小程序为例,带大家了解一下. 首先,看下题目: 这个游戏大家应该不陌生,留点时间大家思考下 ...

  5. 基于微信小程序的猜数字小游戏设计与实现

    目录 一.技术基础 1 1.1 微信小程序开发基础 1 1.1.1 小程序技术背景 1 1.1.2 小程序框架基础 2 1.2 小程序样式.布局与事件响应 2 1.2.1 样式与布局基础 2 1.2. ...

  6. 记录基础学习第二_小项目_飞行棋小游戏

    飞行棋项目: 1.游戏头(要求每一个句子显示不同的颜色 )  //这里用到了Console类中的ForegroundColor属性 取值是枚举类型ConsoleColor中的值             ...

  7. C语言详解生成随机数的过程,time函数、时间戳timer、rand函数和srand函数,附猜数字小游戏

    第十一篇:随机数详解 一.准备工作(预备知识) 1.1.生成伪随机数(函数rand) 1.2.伪随机数"变成"随机数(函数time) 1.3.生成确定范围随机数 二.练手随机数经典 ...

  8. Python 小项目 猜数字小游戏

    欢迎来到<Python 小项目>专栏,这个专栏会不定时更新Python的小项目,大家可以订阅关注哦! 这次,我们要编写一个非常简单的猜数字小游戏! 先看看运行效果: 代码详细教学: 导入模 ...

  9. 猜物品游戏java编程_小猿圈Java初学者练习小案例:猜数字游戏

    对于Java初学者,如果没有好的引导,可能会觉得自己学什么都不好,学什么都不会,这个时候就要给他们一下小的案例,让他们去实践一下,让他们知道自己学的东西是可以用到的,小猿圈java讲师为你准备了Jav ...

最新文章

  1. 使用scikit-learn进行预处理
  2. 通俗易懂:贪心算法(三):习题练习 (力扣605种花问题、122买卖股票的最佳时机)
  3. 如何设置电脑自动锁屏_工信部重要提醒:赶紧设置这个密码!手机丢时也不怕损失!...
  4. Bug貌似发现了centos系统配置host主机的问题
  5. xencenter vgpu 看不见_有一种设计是“看不见,但感受得到”
  6. 前端学习(2351):text组件的使用
  7. 斐波那契数列不用数组_兔子数列——斐波那契数列
  8. 大数据分析实战-信用卡欺诈检测(二)-下采样方案和交叉验证
  9. RabbitMQ——消息发布订阅
  10. BP神经网络设计方法
  11. 2019年终总结与展望
  12. 根据域名快速查询IP
  13. 百度地图API 解析经纬度
  14. 携程java面经 一二HR面面经
  15. 读书笔记:南怀瑾《历史的经验》
  16. python基本数据类型练习
  17. C++中类成员和类继承的private、protected和public关键字作用
  18. 我讨厌倒文不舞的说教和乱起八糟的技术文章
  19. 国内做数据可视化大屏哪家强?这5款产品你必须了解
  20. 阿里云新用户活动:云服务器ECS 新购、升级报价出炉了!

热门文章

  1. 使用github+Hexo人人都能拥有一个美美的博客
  2. 2021新宁二中高考喜报成绩查询,新宁一中、二中、崀高等校高考喜报!最高分684,全县大获得丰收!...
  3. MBT测试实例:做个“机器人”,使其随机、持续的对“web页面”做交互性测试--补充篇1一些思考
  4. 番茄工作方法以及番茄工作表
  5. 阿里云服务器配置参数详细说明文档
  6. 电脑超时空保卫者——光华反病毒软件(转)
  7. mysql多表查询视图_mysql多表查询并创建视图
  8. 如何进入机械革命官网 下载驱动
  9. python的非法变量名_Statsmodels(Patsy)非法变量名/“Series”对象不可调用E
  10. java高级之JDBC的基本操作知识