C(十三)for、while、do - while循环的抉择 --- 打怪闯关情景
前言:
继C(十)for循环 --- 黑神话情景之后👉
https://blog.csdn.net/2401_87025655/article/details/142684637
今天,杰哥想用一个打怪闯关的场景让与大家一起初步认识一下for、while、do - while循环的抉择。(本人自己也是在不断学习,加深认知,如果不对之处,敬请指出。)
目录:
0、唠嗑
1、场景一
2、场景二
3、场景三
4、有趣的问题
5、不懂就问---求助
0、唠嗑
人生无常,大肠包小肠。~~~emmm
虽然我们身边有一些事情是确定的,比如:篮子里有10个苹果,一天只能从篮子里拿走一个,第 i 天还剩多少个(i <= 10),
然而,生活往往是不确定,带有各种附加条件以及随机性等等······
1、场景一
场景一:(扫清障碍)要打10个怪物,每打一个积攒一点法力值,输出每打一个后的法力值
本题需要用到循环且循环次数确定 --- for循环、while循环都可以。
(个人观点:我对循环次数确定的比较喜欢用for循环)
for 循环示例如下 :👉
#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>
int main()
{int i = 0;for (i = 1; i <= 10; i++){printf("%d ", i);}return 0;
}
2、场景二
场景二:密码之门
————你输对密码前,你能知道你要用多少次才能输对吗?
————密码是1~9之间某个数(包括1,9)---假设密码是6
所以,循环的次数 是不确定的。--- 比较建议选 while
(但也不是说不能用for循环,后面有for循环代码示例)
代码示例1(while死循环的构建 + 条件判断):👉
#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>
int main()
{while (1) //1 表示真 --- 死循环{int input = 0;scanf("%d", &input);if (input == 6){printf("开门\n");break;}}return 0;
}
代码示例2(for死循环构建+条件判断): 👉
#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>
int main()
{for (;;){int input = 0;scanf("%d", &input);if (input == 6){printf("开门\n");break;}}return 0;
}
代码示例3:👉(用到scanf的返回值)
#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>
int main()
{int input = 0;while (scanf("%d", &input) == 1){if (input == 6){printf("开门\n");break;}}return 0;
}
tip:关于scanf的返回值详见👉
https://blog.csdn.net/2401_87025655/article/details/142590751
3、场景三
场景三:每打一个怪,获得一次开密码门的机会
要先执行 --- 可以用do - while循环,代码示例👉
#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>
int main()
{int n = 0; // n --- 打怪个数int input = 0;// input --- 所猜密码do{n++;printf("打了第%d个怪,猜密码:>\n", n);input = 0;scanf("%d", &input);} while (input != 6);if (input == 6){printf("开门\n");}return 0;
}
运行结果👉
打了第1个怪,猜密码:>
3
打了第2个怪,猜密码:>
9
打了第3个怪,猜密码:>
5
打了第4个怪,猜密码:>
6
开门
4、有趣的问题
树上有十只鸟,开枪打死一只后,树上还有多少只?
5、不懂就问---求助
各位大佬,请问有没有比较好的学习嵌入式的方式推荐(比如看什么视频,用什么软件······)?本人目前是有stm32的套件的。
最后,如果觉得小弟写得还可以,可以给小弟打赏一下吗?
相关文章:

C(十三)for、while、do - while循环的抉择 --- 打怪闯关情景
前言: 继C(十)for循环 --- 黑神话情景之后👉 https://blog.csdn.net/2401_87025655/article/details/142684637 今天,杰哥想用一个打怪闯关的场景让与大家一起初步认识一下for、while、do - while循环的抉择。…...
【Android 源码分析】Activity生命周期之onStop-2
忽然有一天,我想要做一件事:去代码中去验证那些曾经被“灌输”的理论。 – 服装…...
SpringCloudStream+RocketMQ多topic
之前写过两篇关于SpringCloudStream文章 spring-cloud-stream版本升级,告别旧注解EnableBinding,拥抱函数式编程_spring-cloud-stream output注解没有了-CSDN博客 SpringCloudStreamRocketMQ事务消息配置_spring-cloud-starter-stream-rocketmq-CSDN博…...
随记 前端框架React的初步认识
区分语言 像js 就是构建的最基本的 React框架和Vue框架,用自己的话来说的话,就是对js进行了一层封装,使使用js更加的方便 但是,React框架和Vue框架又不能这么简单的理解,因为这些框架里还封装了一些其他的东西。 向…...

数据结构 ——— 单链表oj题:链表分割(带哨兵位单向不循环链表实现)
目录 题目要求 手搓简易单链表 代码实现 题目要求 现有一链表的头指针 ListNode* head ,给一定值 x ,编写一段代码将所有小于 x 的节点排在其余节点之前,且不能改变原来的数据顺序,返回重新排列后的链表的头节点 举例说明&a…...

华为 HCIP-Datacom H12-821 题库 (32)
🐣博客最下方微信公众号回复题库,领取题库和教学资源 🐤诚挚欢迎IT交流有兴趣的公众号回复交流群 🦘公众号会持续更新网络小知识😼 1.当一个运行 MSTP 协议的交换设备端口收到一个配置BPDU 时,会与设备保存的全局配…...
[C++][第三方库][brpc]详细讲解
目录 1.介绍2.安装3.类与接口介绍1.日志输出类与接口2.ProtoBuf类与接口3.服务端类与接口4.客户端类与接口 4.使用0.一般流程1.Server2.客户端 -- 同步调用3.客户端 -- 异步调用 1.介绍 brpc是用C编写的工业级RPC框架,常用于搜索、存储、机器学习、广告、推荐等高性…...
Python-Learning
补充不熟悉的python知识 1 **是表示平方 注释是用来阐述代码要做什么,以及是如何做的 先编写行之有效的代码,再决定是对其做进一步改进,还是转而去编写新代码 列表常用是append,但也有pop,这个pop是输出一个值&…...

如何让 Android 的前端页面像 iOS 一样“优雅”?
作者:方英杰(崇之) 最近在调研前端页面适配 Android 端异形屏的方案,调研过程中发现了一些比较有意思的点,本文主要是做一个总结。 一、提出问题 首先,我们需要知道 Android 上的前端适配面临着什么问题。 问题其实很…...

10.3学习
1.循环依赖 循环依赖其实就是循环引用,也就是两个或者两个以上的 Bean 互相持有对方,最终形成闭环。比如A 依赖于B,B又依赖于A Spring中循环依赖场景有: prototype 原型 bean循环依赖 构造器的循环依赖(构造器注入)…...

Shell文本处理(三)
Shell文本处理三:字符串处理 1、字符串截取(切片)2、字符串替换3、字符串删除4、去除空格5、大小写转换6、字符串分割7、去除中文在Shell中,字符串没有单独的数据类型,一切都是变量。但这并不意味着我们不能像在Java、Python等其他编程语言中那样处理字符串 1、字符串截取…...
5个python多线程简单示例
示例 1: 基本线程创建 # 示例 1: 基本线程创建 import threading import timedef print_numbers():for i in range(5):time.sleep(1)print(i)# 创建线程 thread threading.Thread(targetprint_numbers)# 启动线程 thread.start()# 等待线程完成(可选) …...
Streamlit:用Python快速构建交互式Web应用
在传统的Web开发中,开发者常常需要编写大量的前端和后端代码,才能实现一个简单的交互式Web应用。Streamlit 通过简化这一过程,使得你只需要用Python编写代码,就能快速创建具有丰富交互功能的Web应用。本文将介绍如何使用Streamlit…...
深入浅出Vue.js组件开发:从基础到高级技巧
解锁Python编程的无限可能:《奇妙的Python》带你漫游代码世界 Vue.js 是一个轻量级且功能强大的 JavaScript 框架,专注于构建用户界面。它的核心优势之一是组件系统,它允许开发者通过模块化、可复用的方式构建复杂的应用程序。在这篇文章中,我们将详细探讨如何开发 Vue.js…...

Python并发编程挑战与解决方案
Python并发编程挑战与解决方案 并发编程是现代软件开发中的一项核心能力,它允许多个任务同时运行,提高程序的性能和响应速度。Python因其易用性和灵活性而广受欢迎,但其全局解释器锁(GIL)以及其他特性给并发编程带来了…...

LeetCode从入门到超凡(五)深入浅出---位运算
引言 大家好,我是GISer Liu😁,一名热爱AI技术的GIS开发者。本系列文章是我跟随DataWhale 2024年9月学习赛的LeetCode学习总结文档;本文主要讲解 位运算算法。💕💕😊 一、 位运算简介 1.什么是位…...

一些 Go Web 开发笔记
原文:Julia Evans - 2024.09.27 在过去的几周里,我花了很多时间在用 Go 开发一个网站,虽然不知道它最终会不会发布,但在这个过程中我学到了一些东西,想记录下来。以下是我的一些收获: Go 1.22 现在有了更…...

[Go语言快速上手]初识Go语言
目录 一、什么是Go语言 二、第一段Go程序 1、Go语言结构 注意 2、Go基础语法 关键字 运算符优先级 三、Go语言数据类型 示例 小结 一、什么是Go语言 Go语言,通常被称为Golang,是一种静态类型、编译型的计算机编程语言。它由Google的Robert Gr…...

基于STM32的智能风扇控制系统设计
引言 本项目将基于STM32微控制器设计一个智能风扇控制系统,通过温度传感器实时检测环境温度,并根据预设的温度范围自动调节风扇的转速。该系统展示了STM32的PWM输出、传感器接口以及自动控制应用的实现。 环境准备 1. 硬件设备 STM32F103C8T6 开发板…...

OpenCV 形态学相关函数详解及用法示例
OpenCV形态学相关的运算包含腐蚀(MORPH_ERODE),膨胀(MORPH_DILATE),开运算(MORPH_OPEN),闭运算(MORPH_CLOSE),梯度运算(MORPH_GRADIENT),顶帽运算(MORPH_TOPHAT),黑帽运算(MORPH_BLACKHAT),击中…...
浏览器访问 AWS ECS 上部署的 Docker 容器(监听 80 端口)
✅ 一、ECS 服务配置 Dockerfile 确保监听 80 端口 EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]或 EXPOSE 80 CMD ["python3", "-m", "http.server", "80"]任务定义(Task Definition&…...
synchronized 学习
学习源: https://www.bilibili.com/video/BV1aJ411V763?spm_id_from333.788.videopod.episodes&vd_source32e1c41a9370911ab06d12fbc36c4ebc 1.应用场景 不超卖,也要考虑性能问题(场景) 2.常见面试问题: sync出…...
Java 8 Stream API 入门到实践详解
一、告别 for 循环! 传统痛点: Java 8 之前,集合操作离不开冗长的 for 循环和匿名类。例如,过滤列表中的偶数: List<Integer> list Arrays.asList(1, 2, 3, 4, 5); List<Integer> evens new ArrayList…...
在 Nginx Stream 层“改写”MQTT ngx_stream_mqtt_filter_module
1、为什么要修改 CONNECT 报文? 多租户隔离:自动为接入设备追加租户前缀,后端按 ClientID 拆分队列。零代码鉴权:将入站用户名替换为 OAuth Access-Token,后端 Broker 统一校验。灰度发布:根据 IP/地理位写…...

听写流程自动化实践,轻量级教育辅助
随着智能教育工具的发展,越来越多的传统学习方式正在被数字化、自动化所优化。听写作为语文、英语等学科中重要的基础训练形式,也迎来了更高效的解决方案。 这是一款轻量但功能强大的听写辅助工具。它是基于本地词库与可选在线语音引擎构建,…...

华硕a豆14 Air香氛版,美学与科技的馨香融合
在快节奏的现代生活中,我们渴望一个能激发创想、愉悦感官的工作与生活伙伴,它不仅是冰冷的科技工具,更能触动我们内心深处的细腻情感。正是在这样的期许下,华硕a豆14 Air香氛版翩然而至,它以一种前所未有的方式&#x…...
【WebSocket】SpringBoot项目中使用WebSocket
1. 导入坐标 如果springboot父工程没有加入websocket的起步依赖,添加它的坐标的时候需要带上版本号。 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-websocket</artifactId> </dep…...
Python常用模块:time、os、shutil与flask初探
一、Flask初探 & PyCharm终端配置 目的: 快速搭建小型Web服务器以提供数据。 工具: 第三方Web框架 Flask (需 pip install flask 安装)。 安装 Flask: 建议: 使用 PyCharm 内置的 Terminal (模拟命令行) 进行安装,避免频繁切换。 PyCharm Terminal 配置建议: 打开 Py…...

python基础语法Ⅰ
python基础语法Ⅰ 常量和表达式变量是什么变量的语法1.定义变量使用变量 变量的类型1.整数2.浮点数(小数)3.字符串4.布尔5.其他 动态类型特征注释注释是什么注释的语法1.行注释2.文档字符串 注释的规范 常量和表达式 我们可以把python当作一个计算器,来进行一些算术…...

RabbitMQ 各类交换机
为什么要用交换机? 交换机用来路由消息。如果直发队列,这个消息就被处理消失了,那别的队列也需要这个消息怎么办?那就要用到交换机 交换机类型 1,fanout:广播 特点 广播所有消息:将消息…...