C语言猜数字游戏的设计_猜数字游戏c语言课程设计-程序员宅基地

技术标签: c语言  游戏  

猜数字游戏是一个经典的编程小游戏,下面我们通过思路解析、页面的优化以及思路的优化三个方面进行说明。

一、思路解析

猜数字游戏的大致思路大致可以分为以下几点:

1.菜单设计

作为一个游戏,哪怕只是小游戏,菜单也是必不可少,我们可以通过一个函数打印出一个简单的菜单界面,如下:

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5q-U54m544CC44CC,size_13,color_FFFFFF,t_70,g_se,x_16

这是打印出来的效果,如下↓

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5q-U54m544CC44CC,size_10,color_FFFFFF,t_70,g_se,x_16 

 2.玩家进行操作,开始游戏

设计思路为先打印菜单,之后玩家输入1/0进行开始与退出操作。

当玩家输入1时,游戏开始。

当玩家输入0时,游戏结束。

如果用户输入了0/1以外的数字则提示错误

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5q-U54m544CC44CC,size_13,color_FFFFFF,t_70,g_se,x_16

接下来,为了让用户有连续的体验,我们将这段代码进行do-while循环

并且确定好跳出循环的条件,用input(玩家输入的数字)作为判断条件,当玩家输入为0时,条件为假,跳出循环。

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5q-U54m544CC44CC,size_15,color_FFFFFF,t_70,g_se,x_16

 3.游戏设计

接下来是game函数的内容,也就是游戏的具体实现,首先我们需要一个1-100的随机数,这需要运用一个库函数rand()

rand()可以生成一个最大为32767的一个随机数,原型如下↓

a98627610f74406a9b38841341f65568.png

 有了随机数,我们还需要一个随机数种子,因为单用rand()函数,每一次生成的随机数都是相同的,我们需要用srand()函数来为其设定一个源头,在srand函数中加入time函数以此得到一个不断变化的随机数种子,保证每一次随机数的多变。如下↓

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5q-U54m544CC44CC,size_9,color_FFFFFF,t_70,g_se,x_16

 因为我们不需要一直去重置随机数种子,所以在主函数的do-while循环外设置即可。

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5q-U54m544CC44CC,size_18,color_FFFFFF,t_70,g_se,x_16

 接下来是游戏的过程请看图片

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5q-U54m544CC44CC,size_20,color_FFFFFF,t_70,g_se,x_16

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5bCP5q-U54m544CC44CC,size_14,color_FFFFFF,t_70,g_se,x_16

 这样我们的猜数字小游戏就设计完成了。

 

 

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/m0_64318128/article/details/124250517

智能推荐

windows下本地连接至postgresql,用于学习_从本地连接pg db-程序员宅基地

文章浏览阅读2.9k次。误:首先,win+R打开cmd窗口,切换到postgresql安装路径的bin目录下,(不用这样); 直接打开pgadmin4,点开数据库,一直点到public,再点里面的table,就可以找到表了。插入json字段:INSERT INTO public.customer( title, fname, lname, addressline, town, zipcode, pho..._从本地连接pg db

推荐开源项目:GBT7714 BibTeX 样式库-程序员宅基地

文章浏览阅读400次,点赞5次,收藏6次。推荐开源项目:GBT7714 BibTeX 样式库项目地址:https://gitcode.com/zepinglee/gbt7714-bibtex-style该项目是 Zepinglee 开发的一个 BibTeX 样式库,主要目标是为遵循中国国家标准 GB/T 7714-2015 的文献引用提供准确、便捷的支持。如果你是一名中国学者或需要在中文文档中进行学术引用,那么这个项目将会是一个非常实..._bibtex 国标

Oracle 21版Database In-Memory LivaLabs实验(下)_oracle的ytes_not_populated不为0-程序员宅基地

文章浏览阅读806次。Oracle 21版Database In-Memory LivaLabs实验(下)_oracle的ytes_not_populated不为0

如果非要回到古代,我会选择春秋战国-程序员宅基地

文章浏览阅读2.4k次。以史为鉴,可以知兴替|第103篇1.“矮大紧”高晓松曾说:“作为知识分子,如果非要我回到古代,我会选择春秋战国,其次是唐宋。”我不知道自己算不算得上是知识分子,假如让我...

Java-序列化serialVersionUID不一致处理_java序列化时对象属性不一致报错怎么办-程序员宅基地

文章浏览阅读2k次。文章目录背景serialVersionUID不一致的兼容处理背景Java Object Serialization 会使用对象中的serialVersionUID私有静态常量长整型属性(private static final long)作为该对象的版本号,反序列化时 JVM 会校验该版本号是否和序列化时的一致,如果不一致会导致序列化失败,抛出InvalidClassException异常。默认情况下,JVM 为每一个实现了Serializable的接口的类生成一个serialVersionUID,_java序列化时对象属性不一致报错怎么办

卸载 流程_IE11卸载发生错误没有成功卸载全部更新解决方法-程序员宅基地

文章浏览阅读1w次。有很多Win7系统用户把IE浏览器升级到IE11浏览器,但是发现并不好用,或是和一些工作不兼容,想要卸载回到原来老版本的IE浏览器,可是在卸载的时候出现:发生错误,没有成功卸载全部更新,也就是说卸载失败了,那么遇到这样的情况时要怎么才能卸载呢?一起来看看小编亲测可用的解决方法。修复步骤如下:操作流程:可以先进入【C:WindowsTEMP】文件夹清空;然后以管理员身份进入【命令行提示符】;输入代码..._ie浏览器降低版本卸载失败

随便推点

一个月肝一个基于SpringBoot的在线教育系统【源码开源】【建议收藏】_在线教育 开源系统-程序员宅基地

文章浏览阅读3.5w次,点赞315次,收藏949次。今天给大家开源一个基于springboot的在线教育平台系统,系统是小孟开发的,第一个版本是小锋开发的(小锋的博客),我进行了本版本的开发。该系统完全免费、开源。系统完美运行,无任何的bug,技术较多,可以当做面试的项目或者作为毕设的项目。系统获取源码的方式见文章底部。为防止刷着刷者找不到,大家点赞、收藏文章。系统完美运行。具体的介绍如下所示。目录1. 技术介绍2.功能介绍3. 前端3.1 首页3.2 课程3.3 登入3.4 商品兑换3.5 课程发布_在线教育 开源系统

Nacos数据库配置_nacos配置数据库-程序员宅基地

文章浏览阅读1.5w次。深知大多数初中级Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!因此收集整理了一份《Java开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。_nacos配置数据库

SIwave电源阻抗(PDN)分析。_siwave pdn仿真-程序员宅基地

文章浏览阅读1.3k次,点赞3次,收藏16次。Z阻抗只看PDN的时候,只需要关注自阻抗就好了。名字一样的是自阻抗,VRM到后面是传输阻抗,_siwave pdn仿真

Linux中禁用ctrl alt del快捷键重启_linx 关闭 ctrl alt del-程序员宅基地

文章浏览阅读363次,点赞7次,收藏8次。【代码】Linux中禁用ctrl alt del快捷键重启。_linx 关闭 ctrl alt del

Vue.js动态获取浏览器高度、宽度并进行实时修改DOM元素高度_vue3 dom元素获取距离浏览器工具栏的高度-程序员宅基地

文章浏览阅读4.7k次,点赞2次,收藏7次。需求:项目中有高度、宽度自适应需求,需要适应不同分辨率的高度及宽度,在不同分辨率下效果区别不会很大html代码如下:<template> <div id="home"> <div class="head" > <v-head></v-head> </div&..._vue3 dom元素获取距离浏览器工具栏的高度

在SpringBoot中使用Spring Security实现权限控制_spring-security配置允许访问ip-程序员宅基地

文章浏览阅读6.8k次,点赞2次,收藏6次。以前在Spring框架中使用Spring Security需要我们进行大量的XML配置,但是,Spring Boot在这里依然有惊喜带给我们,我们今天就一起来看看。 毫无疑问,Spring Boot针对Spring Security也提供了自动配置的功能,这些默认的自动配置极大的简化了我们的开发工作,我们今天就来看看这个吧。创建Project并添加相关依赖 配置applicat..._spring-security配置允许访问ip

推荐文章

热门文章

相关标签