关于我、重生到500年前凭借C语言改变世界科技vlog.4——分支和循环(下)

LVGL v8.3 图片显示与解码缓存实战:PNG 上屏、C 数组与文件双方案 LVGL v8.3 图片两种存储方式、PNG/JPG 上屏解码器挂载、LV_IMG_CACHE_DEF_SIZE 缓存调优、手动预解码头像有效性判断,及"缓存被动画清空"真实踩坑。 阅读详情

文章目录

  • 猜数字游戏专题
    • 1.随机数生成
      • 1.1 rand
      • 1.2 srand
      • 1.3 time
      • 1.4 随机数的范围
    • 2.猜数字游戏的实现
  • 希望读者们多多三连支持
  • 小编会继续更新
  • 你们的鼓励就是我前进的动力!

猜数字游戏专题

掌握了前面学习的vlog的知识,尤其是分支与循环,我们可以写一个经典有趣的游戏:猜数字
游戏要求:
1.电脑自动生成1~100的随机数
2.玩家猜数字,程序根据玩家猜的数字,做出猜大了或猜小了的判断,直到玩家猜对为止

1.随机数生成

1.1 rand

rand是C语言中的一种函数,其语法形式为:

 int rand (void);

rand 会返回一个随机数,这个随机数的范围在0~RAND_MAX(理论值)之间
使用该函数需要包括头文件**#include <stdlib.h>**

实际上我们多次运行只有 rand 函数的程序会发现,每次打印的随机数都相同,其实只有 rand 函数返回的是一个伪随机数,真正的随机数是无法预测下一个数是多少的, rand 函数是基于一个叫 “种子” 的基准值生成随机数,种子默认值为1,所以我们想生成完全随机的数,要让种子时刻处于变化状态

1.2 srand

srand 也是C语言中的一种函数,其语法形式为:

void srand (unsigned int seed);

srand 会初始化随机数的生成器,调用 rand 函数前要调用 srand 函数,通过 srand 函数的参数seed来设置rand函数生成随机数的时候的种子,只要种子在变化,每次生成的随机数序列也就变化起来了
那也就是说 srand 的种子如果是随机的, rand 就能生成随机数

1.3 time

易知时间是在时刻发生变化的,所以我们可以将时间作为种子来使用
time 就是C语言中的一个时间函数,其语法形式为:

 time_t time (time_t* timer);

time 函数会返回当前的日历时间,其实返回的是1970年1月1日0时0分0秒到现在程序运行时间之间的
差值,单位是秒,返回的类型是time_t类型的,time_t 类型本质上其实就是32位或者64位的整型类型

time 函数的参数 timer 如果是非NULL的指针的话,函数也会将这个返回的差值放在 timer 指向的内存中带回去,如果 timer 是NULL,就只返回这个时间的差值,time 函数返回的这个时间差也被叫做:时间戳, time 函数的时候需要包含头文件:#include <time.h>

于是完整的生成随机数代码可以这样写:

srand((unsigned int)time(NULL));
printf("%d\n", rand());

srand函数是不需要频繁调用的,⼀次运行的程序中调用⼀次就够了

1.4 随机数的范围

生成0~99之间的随机数:

rand() % 100;//余数的范围是0~99

生成1~100之间的随机数:

rand()%100+1;//%100的余数是0~99,0~99的数字+1,范围是1~100

生成100~200之间的随机数:

100 + rand()%(200-100+1)//余数的范围是0~100,加100后就是100~200

生成a~b之间的随机数:

a + rand()%(b-a+1)

2.猜数字游戏的实现

首先设置主要的菜单界面:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main()
{
     int input = 0;
     srand((unsigned int)time(NULL));
 do
 {
     menu();
     printf("请选择:>");
     scanf("%d", &input);
     switch (input)
   {
     case 1:
          game();
          break;
     case 0:
          printf("游戏结束\n");
          break;
     default:
          printf("选择错误,重新选择\n");
          break;
    }
 } while (input);
void menu()
{
 printf("***********************\n");
 printf("****** 1. play ******\n");
 printf("****** 0. exit ******\n");
 printf("***********************\n");
}

然后设计主要的猜数字代码:

void game()
{
     int r = rand()%100+1;
     int guess= 0;
     while(1)
   {
       printf("请猜数字>:");
       scanf("%d", &guess);
       if(guess < r)
       {
           printf("猜⼩了\n");
       }
       else if(guess > r)
       {
           printf("猜⼤了\n");
       }
       else
       {
           printf("恭喜你,猜对了\n");
           break;
       }
    } 
}

除此之外,丰富游戏玩法我们还可以加上猜的次数,自定义函数game可修改为:

void game()
{
     int r = rand() % 100 + 1;
     int guess = 0;
     int count = 5;
     while (count)
   {
       printf("\n你还有%d次机会\n", count);
       printf("请猜数字>:");
       scanf("%d", &guess);
       if (guess < r)
       {
            printf("猜⼩了\n");
            else if (guess > r)
       {
            printf("猜⼤了\n");
       }
       else
       {
            printf("恭喜你,猜对了\n");
            break;
       }
     count--;
   }
   if (count == 0)
   {
         printf("你失败了,正确值是:%d\n", r);
   }
}

最后要注意把两个自定义函数 game 和 menu 放在主函数前
或者在主函数前加上 void mean() 和 void game() 进行函数声明 (后面会讲)

希望读者们多多三连支持

小编会继续更新

你们的鼓励就是我前进的动力!

在这里插入图片描述

AI科技热点日报 | 2026年11月09日 2026年11月9日,英伟达董事会因黄仁勋婚外情风波成立独立调查委员会,牵动个人伦理、公司治理与芯片出口安全三重敏感议题。苹果推进“自主代理”Siri,代码现“对话应用”入口,暗示ChatGPT等将入家庭中枢。中国发布AI技术出口管制草案,首次将大模型、智能体、算力纳入管制。Anthropic斥资34亿美元自购1.7GW发电机组,凸显电力瓶颈已从GPU延伸至焊工与电工。国内方面,蚂蚁灵光用户破2000万,腾讯元器停服倒计时,混元推理集群扩容十倍,上海交大AI实验室登《自然》封面,彰显国产AI从模型到产品层的 阅读详情

相关推荐

AI科技热点日报 | 2026年11月06日

2026年11月6日,AI领域迎来三大突破:OpenAI发布网络安全专用模型GPT-6 Cyber,评测得分48.5%,越界行为降至1%以下;Anthropic推出Claude个人财务功能,支持通过Plaid只读连接银行账户;Meta则让Muse智能体实现实时语音对话与表情同步。与此同时,美国警告工业制冷系统遭持续网络攻击,谷歌宣布在怀俄明州投资170亿美元建数据中心,但选举后政策不确定性导致AI产业链震荡,纳斯达克大跌4%。国内进博会开幕,480款全球首发新品亮相,乌镇峰会倡导开源开放,但智能体互联互通仍

刘一说的IT专栏 651

关于我、重生到500年前凭借C语言改变世界科技vlog.3——分支和循环(上)

C语言的结构分为顺序结构、选择结构、循环结构,结构化程序设计离不开这三种结构或这三种结构的组合,合理快速的运用这些结构是学好C语言的基础。

Zero_VPN的博客 1707

AI科技热点日报 | 2026年11月10日

今日窗口内,AI 行业的主线明显从"模型能力竞赛"移向"算力主权"与"安全责任归属"。

刘一说的IT专栏 2141

static 的三种用法:C 语言里一个关键字的三张面孔

本文系统讲解 C 语言中 static 关键字的三种用法:修饰局部变量延长生命周期、修饰全局变量与函数限制作用域到本文件。通过一个包含三个文件的完整工程示例对照演示,并从存储期、作用域与链接性三个属性解释其统一原理,最后补充单元测试框架偏爱 static 函数的工程实践。

大模型全栈工程师 · Thanks_ks 326

AI科技热点日报 | 2026年11月08日

2026年11月8日,AI资本迎来“重定价”拐点:OpenAI融资缩水至200亿美元,估值降至1.25万亿美元;Anthropic IPO估值遭投资者质疑,建议下调至1万亿以防股灾。微软悄然终止与甲骨文的旧算力租约,转向高算力芯片。高盛警示,五大云厂年内发债超2960亿美元,新债溢价逼近垃圾债水平。能源与硬件压力凸显:Anthropic豪掷34亿美元购发电机组,英伟达押注日月光扩产CoWoS封装。政策层面,中国拟推机器人“一机一码”标识制度,网信办清理4.7万条AI仿冒信息。模型端则有谷歌Gemini Om

刘一说的IT专栏 117

【QT+PCL】串口读取单线激光雷达数据并在QVtkWidget组件中实时刷新(一)

(本文主要记录开发过程以及遇到的困难及解决方式)

2301_76329543的博客 3068

【FDE知识库】(1):AI 编程时代开发语言选型分析,云使用go,企业用java,算法python,底层c

AI 编程时代,开发语言选型需综合考量AI适配度、编译速度、跨平台与学习成本。Python以海量语料和即时执行成首选,适用于AI/ML与原型开发;TypeScript凭借类型系统与秒级构建,成为前端及应用层主流;Go以极速编译与统一风格,契合AI代理高效迭代需求。Rust/C++虽性能强,但编译慢、学习成本高,不适于快速试错。综合推荐:优先选Python、TypeScript、Go,兼顾效率与生态,实现最优AI协作体验。

freewebsys的专栏 572

COLMAP生成MVSNet数据集

COLMAP生成MVSNet数据集

qq_43307074的博客 5637

胜宏科技泰国A1厂房满产,高端PCB扩产延伸至越南

胜宏科技泰国A1厂房满产,高端PCB扩产延伸至越南

qianliuchuhai的博客 235

从实验室到生产线:Qwen3-Omni后训练技术在实际业务中的落地挑战

本文探讨了Qwen3-Omni后训练技术在实际业务中的落地挑战,重点分析了多模态AI在工业应用中的关键问题与解决方案。通过金融风控、跨境电商等场景案例,揭示了通用模型与垂直需求的矛盾,并提供了知识蒸馏、语音合成优化等实战经验,助力企业实现技术到业务的转化。

weixin_29035147的博客 268

ESP32-IDF开发之旅 基础篇⑪ ESP-IDF 任务看门狗以及多核任务

本文介绍了ESP-IDF中的任务看门狗(TWDT)和多核任务管理。TWDT用于监控任务是否被挂起,可同时监视双核任务,通过定时喂狗机制检测任务阻塞。文中详细讲解了TWDT的配置方法、订阅流程及示例代码,并演示了如何触发和处理看门狗超时。针对ESP32双核特性,重点介绍了xTaskCreatePinnedToCore函数的使用,说明如何将任务绑定到指定核心(CPU0/CPU1)运行,并提供了多核任务创建的代码示例。这些机制对提高系统稳定性和优化多核性能至关重要。

单片机菜鸟哥的博客 268

北京盛元广通科技有限公司推出高校实验室危化品溯源管理软件

“高校实验室危化品溯源管理软件”不仅仅是一款简单的管理工具,它代表了现代信息化管理在高校化学实验领域的一次重要突破。通过这款软件,高校实验室能够在保证安全的同时,提高管理效率,为科研工作提供强有力的支持。因此,对于那些还在为化学品管理问题头疼的高校来说,不妨考虑引入这款软件,为自己的实验室带来全新的面貌。

SYGT_LIMS的博客 106

加速访问Cloudflare的网站的解决方案

本文主要介绍了加速访问Cloudflare的网站的解决方案,希望能对大家有所帮助。通过软件计算得到最快的IP地址的效果图如下图所示,具体解决方案参考下文。 在这里插入图片描述 文章目录 1. 问题描述 2. 解决方案

weixin_43178406的博客 1万+

情感交互机器人融资,四川具身科技的「爱湫」登场

当前人形机器人的主流战场是工业、仓储、巡检这些「干活」的场景,而「爱湫」把重心放在了「陪伴」上——通过面部投影和情绪识别,让机器人和人之间多一层情感层面的交互。情感交互机器人的市场,其实一直存在,只是过去被「能干活」的主流叙事盖住了。它主推的产品「爱湫」,是一款主打情感交互的人形机器人,搭载 3D 投影面部技术,情感交互机器人的逻辑,是面向养老陪伴、文旅服务、展厅导览这类「不要求重体力、但要求互动感」的场景。真正的考验不在发布会,而在它能不能在真实的养老和陪伴场景里,被用户用起来、留下来。

jushenAGI的博客 248

一步一步详解LSTM网络【从RNN到LSTM到GRU等,直至attention】

本文主要译至并加上了部分笔者的见解,对于全面理解LSTM有一定的帮助。

zik的博客 3078

【经验&技巧】如何在ADS中导入示波器的时域波形?

从示波器中导出的时域波形数据,需要按照固定的格式进行修改,并通过Display dataset对话框导入ADS。

一只豌豆象的博客 1572

探秘优质 LED 智能海报屏厂家,解锁广告展示新科技

例如,传统 LED 屏安装极为繁琐,拆装成本居高不下,数据表明,一次大型活动中传统屏的安装和拆卸费用能占到总成本的 30%左右。与传统海报屏方案相比,其核心优势明显,“免安装、插电即用”解决了工程布线与结构搭建的烦恼,缩短了安装时间,提高了效率;公司的三折叠双面 LED 海报屏更是行业首创,无需安装,插电即用,左右展开变身超大全景屏,折叠后秒变双面独立屏,360°全方位吸睛。用户反馈也证明了其产品的价值,众多客户表示使用该公司的海报屏后,广告展示效果大幅提升,同时降低了使用成本和维护成本。

BrandonLEDscreen的博客 192

QGis二次开发 —— 1、win10/win11搭建Vs2017-QGis3.40.12环境(附Vs2017环境效果,附全部问题解决方法)(附:Qt助手加入QGis接口说明文档)

QGis二次开发 —— 1、Windows10搭建Vs2017-QGis环境(附Vs2017环境效果)(附:Qt助手加入QGisA接口说明文档)

1362

收入增长、毛利率下行:从宇树科技三季报看现阶段行业的共性矛盾

宇树的三季报,更像一张产业分水岭的快照。它证明,硬件层面的交付能力已经跑通,但行业真正的考验才刚刚开始。赛道增长的确定性来自供应链成熟、整机制造能力提升;而最大的不确定性,恰恰来自于具身智能能不能打通物理世界,让机器人变成可以稳定创造经济价值的生产力工具。未来一段时间,行业也许不会迎来全面爆发,但一定会持续分化。能够守住硬件底盘、持续迭代具身能力、锁定场景闭环的企业,才有机会穿越周期,缺少长期投入能力的玩家,则会逐步被市场出清。

聚焦具身智能产业前沿,分享深度行业洞察、技术趋势与产业落地思考。 244

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

陪诊陪护系统:科技赋能温情守护,打造智慧养老新生态:SpringBoot + Uniapp 三端架构,用户端、师傅端、管理端一次讲透

本文详解一套同城上门维修系统的完整实现,基于SpringBoot+Uniapp+Vue技术栈,涵盖用户端、师傅端、管理端三端设计。重点解析订单流转、派单策略、现场加价防控、结算对账等核心业务难点,强调状态机统一管理与关键节点留痕。系统支持多端发布、可扩展至多城市与会员营销,适合家政、维修类项目开发者参考,具备高可用性与运营闭环能力。

juzige03的博客 134

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

从香港金融科技周看宇信科技:海外布局的三个着力点

香港金融科技周一向被视为金融科技出海的风向标。2026年展会期间,宇信科技与华为、阿曼信用与金融信息中心(Mala’a)、微众科技海外团队的密集交流,放在金融IT行业出海路径整体调整的背景下,其背后的逻辑值得拆解。

u013368359的博客 209

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

海外手写票据OCR怎么选?开灵科技、Google Document AI与百度智能云按原文译文对照、金额校验和人工复核对比

海外差旅报销里最难处理的票据,往往不是排版规范的电子发票,而是一张手写收据:当地文字、英文、印章、潦草数字混在一起,财务既要读懂商户和项目,又要判断金额是否算对。可准备泰文手写现金单、双语印刷发票和印章遮挡的收据各一张,让三种方案完成相同任务:识别票据类型、商户、币种、日期、明细和总额;以一张泰国手写现金销售单为例,识别结果按票据类型、卖方、手写明细、数量、单价、金额及总计组织,原文和中文并排显示。这类方案通常支持多语种识别、自动判断语种、原文中文对照,并处理手写体、表格、印章、签名及图像质量。

2509_91589461的博客 384

企业费控系统怎么选?开灵科技灵动报销、用友BIP与SAP Concur按对话填单、预算前控和成本中心分摊对比

该方案同时处理出差申请与补助、商旅预订及对账、发票管理、借款冲销、批量付款和回单、凭证生成、手机打印等环节。不同费控产品对以下费用的处理深度可能不同:私车公用按轨迹和里程计算补贴,出差补助按职级、城市与天数计算,商旅预订与月结账单需要和员工申请、费用标准对上。已经以BIP运行多组织预算、共享财务和总账的集团,把报销纳入原有主干,能让费用发生、预算执行、核算与经营分析使用同一套组织及科目口径。员工填单和财务退单耗时较多,且预算、付款、凭证和成本中心需要贯通时,可把开灵科技灵动报销的整条链路纳入测试范围;

2509_91589461的博客 31

南华期货30周年|科技赋能 研究铸基 从技术自研到投研产服一体化

截至2025年,南华研究院团队规模为44人,研究生及以上学历占比高达97%,年产出各类报告3000余份,其研究内容覆盖日度、周度、季度、年度报告及专题调研报告等多维度,信息来源包含产业调研数据、供需跟踪及期现结构监测,内容具备较强的完整性与实战参考价值,专业实力稳居行业前列。2012年开发增强型指数。1999年,行业进入清理整顿阶段,南华逆势而上,选择用技术筑牢根基,率先搭建早期电子化交易系统,融入投研数据与分析成果,以技术筑牢合规经营根基,让投研价值精准触达客户,也让公司在行业洗牌中稳稳站住了脚跟。

SHCXT的博客 221

财务审计调档怎样找到整笔业务的证据?开灵科技、金蝶发票云与用友BIP按凭证关联、审计包和借阅权限对比

实际使用中,财务还会遇到合同、邮件、OFD发票、PDF扫描件、表格和工程资料混在一起的情况。该方案的电子会计档案把记账凭证、原始单据、发票、银行回单、报销单与合同关联成业务证据网络。更有用的方式,是让合同号、供应商、业务单号、发票、凭证和银行流水形成可追踪关系;审计人员抽到一张付款凭证,财务往往能很快找到凭证扫描件,却还要继续翻合同、发票、付款申请、银行回单和验收记录。该方案把文件级密级、水印、借阅日志和审计包放在同一使用流程中,便于调取完整证据,也减少“为省事把整个财务共享盘开放给审计”的做法。

2509_91589461的博客 228

星环科技 ArgoDB:以一体化架构构建数据安全体系

数据安全不仅涉及信息保密,也包括数据完整性与业务连续性。对于金融、政务、能源、医疗、交通等关键行业而言,数据安全不只是技术防护问题,更关系到业务连续性、监管合规、客户信任和企业声誉。ArgoDB 通过一体化数据管理,让数据在统一平台内完成写入、存储、计算、分析与共享消费,减少跨系统流转带来的安全断点,为统一的权限策略、数据保护和安全审计提供基础。未来,星环科技将持续推进 ArgoDB 的技术演进与安全能力建设,为金融、政务、能源、医疗、交通等行业的核心业务、数据应用及智能化转型提供安全、可靠的数据底座。

Transwarp 186
上一篇: 关于我、重生到500年前凭借C语言改变世界科技vlog.3——分支和循环(上)
下一篇: 关于我、重生到500年前凭借C语言改变世界科技vlog.5——数组
澪贰
澪贰 优质创作者: C/C++技术领域 优质创作者: C/C++技术领域
博客等级 码龄2年 1万+粉丝 222原创
评论 42
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值