C语言-数字爆炸游戏

2023-11-11

 问题:

        你好,欢迎来到数字爆炸,系统随机生成一个数字,猜大了,提示猜大了,猜小了,提示猜小了。

思路:

  1. 先写游戏大概思路
  2. 首先,会有菜单吧,所以先写一个菜单函数,显示菜单的内容。
  3. 然后选择菜单中的选项,不同的选项,对应不同的功能,因此这个用switch实现最好。
  4. 而想要一直玩,选择退出才结束,则,来一个do while循环,因为先出菜单,再选择,所以选择do while;
  5. 如果选择进入游戏,则进入游戏函数,
  6. 游戏函数开始,随机生成一个数字,rand()函数为随机生成数字。但由于范围过大,我们想生成0到100内的数字,给随机生成的数字取模(即取余数)%100,这个所求的肯定在0-99内,因为大于100的,我都出除走了。因为想出现100,所以再+1.因此总体语句为:int ret = rand() % 100 + 1;
  7. 但rand函数要求需要一个随机数的起始地址。这时候需要用到srand()函数,他会提供一个随机数的起始地址,保证不会乱跳。而srand()函数内部,需要提供一个一直变化的量,而电脑时间就是一直变的,因此,用time(NULL)函数最合适,又因为time返回time_t类型,即long long类型,但srand需要unsigned int类型,所以给time强制转化即srand((unsigned int)time(NULL));这里需要注意,srand提供的随机数起始位置,调用一次就好,因此在主函数开始,调用即可。
  8. 之后便进行游戏即可。

代码如下:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
void menu()
{
	printf("********************\n");
	printf("1-开始游戏\n");
	printf("2-退出\n");
	printf("********************\n");
}
void game()
{
	int ret = rand()%100+1;
	printf("%d\n", ret);
	Sleep(50);
	system("cls");
	int n = 0;
	while (1)
	{
		printf("请输入你猜的数字\n");
		scanf("%d", &n);
		if (n == ret)
		{
			printf("我靠,牛皮,猜对了\n");
			printf("\n还想再来一局不,搏一搏,单车变摩托\n");
			printf("再来一局(1/0):");
			int choose = 0;
			scanf("%d", &choose);
			if (choose == 1)
			{
				game();
			}

			break;
		}
		else if (n < ret)
			printf("猜小了啊,老铁\n");
		else if (n > ret)
			printf("猜大了,铁子\n");
	}
}

int main()
{
	int input = 0;
	srand((unsigned int)time(NULL));
	do
	{
		menu();
		printf("请选择选项\n");
		scanf("%d", &input);
		
		switch (input)
		{
			case 1:
				game();
				break;
			case 2:
				break;
			default:
				printf("选项不存在,请重新输入\n");
				break;
		}
	} while (input != 2);
}

结果如下:

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C语言-数字爆炸游戏 的相关文章

  • 【计算机毕业设计】毕业生就业管理微信小程序_lm9q0

    腾讯公司在2017年1月19日发布了一款不需要下载 不需要卸载 不需要存储的软件叫微信小程序 受到了很多人的喜欢 微信小程序自2017年发布至今 依托微信的社交属性和庞大的用户基数 已经渗透到生活的方方面面 1 微信小程序可以将基于微信平台
  • 【计算机毕业设计】白优校园社团网站的设计与实现

    近些年 随着中国经济发展 人民的生活质量逐渐提高 对网络的依赖性越来越高 通过网络处理的事务越来越多 随着白优校园社团网站的常态化 如果依然采用传统的管理方式 将会为工作人员带来庞大的工作量 这将是一个巨大考验 需要投入大量人力开展对社团
  • U3D游戏开发中摇杆的制作(NGUI版)

    在PC端模拟摇杆 实现控制摇杆让玩家或者物体移动 以下是完整代码 using System Collections using System Collections Generic using UnityEngine public clas
  • 游戏开发创建操作之玩家信息系统的建立

    游戏一般都需要玩家信息系统 那么我们应该如何搭建玩家信息系统 接下来我将展示一种简单的方法 完整代码如下 using System Collections using System Collections Generic using Uni
  • 游戏开发常见操作梳理之小地图的制作

    游戏中一般存在小地图系统 实际上就是设置一个新的摄像机放置在玩家的正上方 然后在小地图上显示新摄像机看见的东西就可以了 在小地图上一般存在放大地图和缩小地图的按钮可以方便放大和缩小地图 这些操作是如何实现的呢 接下来直接上核心代码 usin
  • 游戏开发常见操作梳理之角色选择一

    进入游戏后 我们经常会进入角色选择的界面 通常是左右两个按钮可以更改角色供玩家选择 对于这种界面我们通常使用数据持久化将角色信息存储起来 接下来的笔记中 我将使用自带的数据持久化系统对其进行操作 实现角色的选择页面 后续会更新xml系列的文
  • 【硕士论文复现】可再生能源发电与电动汽车的协同调度策略研究(Matlab代码实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 1 1 上层问题 1 2 下层问题 2 运行结果
  • 2024诸多大厂春招提前启动!Android的程序员还在等什么

    春招 提前批 已开 xdm别打瞌睡了 格力 顺丰 酷狗 沃尔玛中国 理想 科大讯飞等开启春招 开始收简历了 还有hc的企业提前抢人 春招时间短 节奏快 招满即止 就算挂了也绝不能不投 对企业来说 秋招和春招都是储备人才的黄金时期 春招中 除
  • 史上最全Java面试八股文(带全部答案)2024年最新版

    今天要谈的主题是关于求职 求职是在每个技术人员的生涯中都要经历多次 对于我们大部分人而言 在进入自己心仪的公司之前少不了准备工作 有一份全面细致 面试题 将帮助我们减少许多麻烦 在跳槽季来临之前 特地做这个系列的文章 一方面帮助自己巩固下基
  • 申泰勇教练的独家人物化身系列即将登陆 The Sandbox

    申泰勇 Shin Tae yong 教练是足球界的传奇人物 他来到 The Sandbox 推出了自己的专属人物化身系列 作为前 K 联赛中场球员和印尼队取得历史性成就的幕后教练 他的传奇经历现在已经影响到了虚拟世界 向过去 现在和未来致敬
  • 计算机Java项目|学生成绩管理系统

    作者简介 Java领域优质创作者 CSDN博客专家 CSDN内容合伙人 掘金特邀作者 阿里云博客专家 51CTO特邀作者 多年架构师设计经验 腾讯课堂常驻讲师 主要内容 Java项目 Python项目 前端项目 人工智能与大数据 简历模板
  • 计算机Java项目|电影购票系统

    作者简介 Java领域优质创作者 CSDN博客专家 CSDN内容合伙人 掘金特邀作者 阿里云博客专家 51CTO特邀作者 多年架构师设计经验 腾讯课堂常驻讲师 主要内容 Java项目 Python项目 前端项目 人工智能与大数据 简历模板
  • 春眠不觉晓,Java数据类型知多少?基础牢不牢看完本文就有数了

    俺滴座右铭是不在沉默中爆发 就在沉默中灭亡 一起加油学习 珍惜现在来之不易的学习时光吧 等工作之后 你就会发现 想学习真的需要挤时间 厚积薄发啦 我们知道Java是面向对象的静态型编程语言 在Java的世界里万物皆对象 但我认为是万物皆数据
  • APP开发毕业设计|ssm爱心小屋公益机构智慧管理APP

    作者主页 编程指南针 作者简介 Java领域优质创作者 CSDN博客专家 CSDN内容合伙人 掘金特邀作者 阿里云博客专家 51CTO特邀作者 多年架构师设计经验 腾讯课堂常驻讲师 主要内容 Java项目 Python项目 前端项目 人工智
  • 最新整理Java面试八股文,大厂必备神器

    在此 我采访了数十名大厂的面试官和上百的的面试者 总结出了这一套Java面试八股文 这套八股文已经帮助了上百人拿到自己心仪的offer 我们先来看看这套八股文 Java基础面试八股文 操作系统中 heap 和 stack 的区别 什么是基于
  • 【go语言】结构体数据填充生成md错误码文件

    这里使用pongo2这个模版引擎库进行md文件渲染 GitHub flosch pongo2 Django syntax like template engine for Go package main import fmt github
  • 【go语言】读取toml文件

    一 简介 TOML 全称为Tom s Obvious Minimal Language 是一种易读的配置文件格式 旨在成为一个极简的数据序列化语言 TOML的设计原则之一是保持简洁性 易读性 同时提供足够的灵活性以满足各种应用场景 TOML
  • 【路径规划】基于改进遗传算法求解机器人栅格地图路径规划(Matlab实现实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 3 参考文献 4 Matlab代码实现
  • Java开发中不要使用受检异常

    简介 Java是唯一 主流 实现了受检异常概念的编程语言 一开始 受检异常就是争议的焦点 在当时被视为一种创新概念 Java于1996年推出 如今却被视不良实践 本文要讨论Java中非受检异常和受检异常的动机以及它们优缺点 与大多数关注这个
  • 计算机Java项目|人体健康信息管理系统

    作者简介 Java领域优质创作者 CSDN博客专家 CSDN内容合伙人 掘金特邀作者 阿里云博客专家 51CTO特邀作者 多年架构师设计经验 腾讯课堂常驻讲师 主要内容 Java项目 Python项目 前端项目 人工智能与大数据 简历模板

随机推荐

  • 阀门与压力表同步代码

    using System Collections using System Collections Generic using UnityEngine public class Mmmmmm MonoBehaviour float sum
  • Elasticsearch 写入和查询优化底层原理

    一 Elasticsearch 写入原理 1 每个index 是由多个shard组成 默认是5个 每个shard有一个主节点和多个副本节点 分散在不同的物理节点上 2 写入数据的时候 先根据routing参数 以那个字段的值作为路由key
  • 入门级题解:704. 二分查找

    题目 给定一个 n 个元素有序的 升序 整型数组 nums 和一个目标值 target 写一个函数搜索 nums 中的 target 如果目标值存在返回下标 否则返回 1 暴力查找 直接找 遍历 直接尝试二分查找 递归应该要用 中间的值 a
  • 1_simulink简单入门_simulink仿真PID控制

    1 simulink简单入门 simulink仿真PID控制 2 simulink搭建RCL 电阻电感电容模块 毕业前想去做物联网还是或者linux 结果玩了一年多的电机控制 早就深知matlab simulink绕不过的 拖到现在 下班晚
  • attention机制(SE-Net、CBAM及Triplet)

    简介 注意力机制 Attention Mechanism 源于人类视觉的研究 在认知科学中 人类会选择性地关注所有信息的一部分 而忽略其他可见信息 为了合理利用有限的资源 就需要选择视觉区域的特定部分 并重点关注它 在神经网络中 atten
  • RabbitMQ 几种模式

    普通模式 一个生产者 一个交换机 一个队列 一个消费者 生产者 public class Send private final static String QUEUE NAME hello public static void main S
  • “csproj文件究竟是做什么用的”

    csproj文件大家应该不会陌生 那就是C 项目文件的扩展名 它是 C Sharp Project 的缩写 那么它究竟是给谁用的呢 那是给开发工具用的 例如我们在熟悉不过的Visual Studio 以及大家可以没有接触过 但是应该都听说过
  • adobe 软件(PS AI)占用内存过大问题

    adobe 软件 PS AI 占用内存过大问题 电脑是通过数据的交换来进行工作 CPU是处理数据交换的硬件 内存是暂时存储这些数据的硬件 电脑内存 RAM 容量越大你的数据交换能力就越强 就越能够完成复杂的任务 查看设备配置 操作系统 内存
  • 毕业设计-基于机器视觉的木材表面缺陷检测-OpenCV

    目录 前言 课题背景和意义 实现技术思路 一 表面缺陷分析及检测方案设计 二 表面缺陷图像识别 三 系统识别性能测试 实现效果图样例 最后 前言 大四是整个大学期间最忙碌的时光 一边要忙着备考或实习为毕业后面临的就业升学做准备 一边要为毕业
  • 【python】天平最少砝码设计

    题目 有一架天平 砝码的种类和个数要你来设计 给定一个整数n 则待称重的物品的重量可能是 1 n 之间的整数 砝码可以放在左盘也可以放在右盘 要能称出所有 1 n 重量的物品 请问如何设计砝码的种类和个数 使得这一套砝码的总个数最少 比如
  • 卷积神经网络 —— 图像卷积

    卷积神经网络是最具代表性的深度学习算法之一 目前已经被大范围的应用与计算机视觉等领域 并且取得了众多突破性的进展 在学习卷积神经网络之前 我们需要学习图像卷积运算 图像卷积运算的作用 图像卷积运算是一种图像处理算法 通过它可以实现很多不同的
  • gin http-request

    func main router gin Default router POST form post message func c gin Context 查询请求URL后面拼接的参数 id c Query id 从取得URL中参数 此处U
  • 移动开发技术(三)

    禅道工具的使用 添加产品 步骤 在 产品视图 中 单击 添加产品 按钮 在 新增产品 页面中 输入产品信息 单击 保存 按钮 说明 产品由产品经理进行添加 产品类型 正常 多分支 PC Android Ios 多平台 Windows Lin
  • Spring三种切面

    Spring除了支持Schema方式配置AOP 还支持注解方式 使用 AspectJ风格的切面声明 1 启用对 AspectJ的支持 Spring默认不支持 AspectJ风格的切面声明 为了支持需要使用如下配置 java代码
  • 1. 抽纸片(java)

    问题描述 你的朋友提议玩一个游戏 将写有数字的的n纸片放入口袋中 你可以从口袋中抽取三次纸片 每次记下纸片上的数字后都将其放回到口袋中 如果这三个数字的和是m 就是你赢 否则就是你朋友赢 请你编写一个程序 判断当纸片上所写的数字是k1 k2
  • Eclipse中Maven的使用以及Pom.xml详解

    Eclipse中创建Maven项目 一 Maven项目的创建 1 点击File gt New gt Other gt 搜索maven gt 选择Maven Project点击Next 2 勾选第一项 表示跳过骨架选择 点击Next 3 输入
  • 批处理命令,函数传参和跳转

    文章目录 函数 参数传递 返回值 局部变量保护 goto 批处理系列 初步 set指令 设置变量 函数 函数封装是编程语言必不可少的环节 而函数在创建时 至少需要有一个函数标识 同时需要一块区域 来组成函数体 Dos中的函数用标签来标识 以
  • Vmware虚拟机系统时间同步网络时间并登录用户自动校正时间

    VM虚拟机大家都用 我在用完后 经常使用 挂起客户机 但是这样一来 系统恢复启动很快 但是少了正常的系统自检 包括和网络同步时间 今天在虚拟机上测试 find root Text mtime 3 name Service log exec
  • can转光纤、can光端机、can光纤转换器如何选型

    1 首先 根据组网方式的不同 can光端机分为点对点式CANFiber系列 总线级联式LCAN FOB系列和环网冗余式LCAN FOBR系列 2 can光纤转换器选型
  • C语言-数字爆炸游戏

    问题 你好 欢迎来到数字爆炸 系统随机生成一个数字 猜大了 提示猜大了 猜小了 提示猜小了 思路 先写游戏大概思路 首先 会有菜单吧 所以先写一个菜单函数 显示菜单的内容 然后选择菜单中的选项 不同的选项 对应不同的功能 因此这个用swit