当前位置: 首页 > news >正文

C(九)while循环 --- 军训匕首操情景

匕首操,oi~oi~oi~~~~~

接下来的几篇推文,杰哥记录的是三大循环结构的运行流程及其变式。

本篇的主角是while循环。👉

目录:

  • while循环 的组成、运行流程及其变式
  • 关键字break 和 continue 在while 循环中的作用
  • while 循环的嵌套
  • 题目收集
  • 军训记录

 一、while循环 的组成、运行流程及其变式

场景一:

教官  ———“我数到十,马上集合,快点”。👉代码示例: 

#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>
int main()
{printf("我数到10,马上集合\n");int i = 1; //1、初始化while (i <= 10)//2、判断{printf("%d\n", i);i++;//3、调整}return 0;
}

 1、while 的三大组成

———— 1、初始化 ;2、判断;3、调整

2、while 的运行流程

break 和 continue可以先不用管,先忽视它。

3、变式 

改动其中任意一个,结果可能会受到影响,甚至死循环。

3.1变初始化👉

 教官:“我从3开始数”。

#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>
int main()
{printf("我数到10,马上集合\n");int i = 3; //1、初始化while (i <= 10)//2、判断{printf("%d\n", i);i++;//3、调整}return 0;
}

 运行结果:

我数到10,马上集合
3
4
5
6
7
8
9
10

3.2 变判断 👉

教官:“我只数到9”

#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>
int main()
{printf("我只数到9,马上集合\n");int i = 1; //1、初始化while (i <= 9)//2、判断{printf("%d\n", i);i++;//3、调整}return 0;
}

运行结果: 

我只数到9,马上集合
1
2
3
4
5
6
7
8
9

3.3变调整👉

教官:“怎么还有在慢慢晃的?!1,3,5,7,9”。

#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>
int main()
{printf("怎么还有在慢慢晃的?!1,3,5,7,9\n");int i = 1; //1、初始化while (i <= 10)//2、判断{printf("%d\n", i);i += 2;//3、调整}return 0;
}

运行结果:

怎么还有在慢慢晃的?!1,3,5,7,9
1
3
5
7
9

3.4都改变👉

教官倒数。

#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>
int main()
{int i = 10; //1、初始化while (i >= 1)//2、判断{printf("%d\n", i);i--;//3、调整}return 0;
}

运行结果:

10
9
8
7
6
5
4
3
2
1

二、关键字break 和 continue 在while 循环中的作用

1、break 

作用:打破循环。

场景二:

教官:“从前往后报数,直到报到8的同学那停止” 👉

#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>
int main()
{int i = 1; //1、初始化while (1)//2、判断--"1"表示真,那么while将进入死循环,直到遇到break等等{printf("%d\n", i);if (8 == i){break;}i++;//3、调整}return 0;
}

运行结果:

1
2
3
4
5
6
7
8

2、continue

作用:跳过本次循环continue后面的部分。(而break是跳过整个循环)

场景三:

教官:“从前往后报数,把没来的同学空出来”。👉

#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>
int main()
{int i = 0; //1、初始化while (i < 10)//2、判断{i++;//3、调整if (5 == i){continue;}printf("%d\n", i);}return 0;
}

当i == 4进入循环,通过i++变成5,进入if语句中,但是遇到continue,所以回到循环的判断部分,

i == 5符合条件,进入循环,通过i++后变成6,这样就不用再遇到continue,接下来照常运行。

运行结果:(没有5)

1
2
3
4
6
7
8
9
10

三、while 循环的嵌套

场景四: 

打印匕首操🗡🗡🗡集合队形👉30 * 20的方阵

分析:对于队形的打印,除了列,还有行。接着,确定循环嵌套的内外层,内层不妨为行的打印,外层不妨为列的控制。 

#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>
int main()
{int i = 0; while (i < 20){int j = 0;while (j < 30){printf("* ");j++;}printf("\n");i++;}return 0;
}

外层循环每进行一次,内层就要完整进行完一次。运行结果: 

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

场景五:

打印一个三角形方阵👉 

分析:第一行只有一列,第二行有两列······行与列有一定的联系。

因此,判断部分改成 j  <= i  

#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>
int main()
{int i = 0; while (i < 20){int j = 0;while (j <= i)//改变判断部分即可做到{printf("* ");j++;}printf("\n");i++;}return 0;
}

运行结果:

*
* *
* * *
* * * *
* * * * *
* * * * * *
* * * * * * *
* * * * * * * *
* * * * * * * * *
* * * * * * * * * *
* * * * * * * * * * *
* * * * * * * * * * * *
* * * * * * * * * * * * *
* * * * * * * * * * * * * *
* * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * *

四、题目收集 

4.1计算1!+ 2!+ 3!+ 4!+ 5!+ ······ + 10!

4.2计算1*2*3+3*4*5+5*6*7+······+ 9*10*11 

五、军训记录

1、 匕首操oi~oi~oi~~~

2、《后来》 

 

相关文章:

C(九)while循环 --- 军训匕首操情景

匕首操&#xff0c;oi~oi~oi~~~~~ 接下来的几篇推文&#xff0c;杰哥记录的是三大循环结构的运行流程及其变式。 本篇的主角是while循环。&#x1f449; 目录&#xff1a; while循环 的组成、运行流程及其变式关键字break 和 continue 在while 循环中的作用while 循环的嵌套题目…...

C#秒如何转为时分秒格式

将秒数转换为分钟和秒数可以通过简单的数学运算来实现。假设你有一个整数表示秒数,可以通过以下方式转换为分钟: 将秒数除以 3600 来获取时钟的整数部分。 将秒数求余 3600的结果除以60 来获取分钟的整数部分。 用秒数求余 60 来获取余下的秒数。 具体实现函数如下: //…...

重学SpringBoot3-集成Redis(三)

更多SpringBoot3内容请关注我的专栏&#xff1a;《SpringBoot3》 期待您的点赞&#x1f44d;收藏⭐评论✍ 重学SpringBoot3-集成Redis&#xff08;三&#xff09; 1. 引入 Redis 依赖2. 配置 RedisCacheManager 及自定义过期策略2.1 示例代码&#xff1a;自定义过期策略 3. 配置…...

【Spine】引入PhotoshopToSpine脚本

引入 右键Photoshop图标&#xff0c;选择属性 打开文件所在位置 找到目录下的\Presets\Scripts文件夹。 找到Spine目录下的\scripts\photoshop文件夹下的PhotoshopToSpine.jsx 复制它&#xff0c;丢到Photoshop刚才找的那个目录下。 使用 打开.psd文件&#xff0c;检查不要…...

【Linux】详解Linux下的工具(内含yum指令和vim指令)

文章目录 前言1. Linux下软件安装的方式2. yum2.1 软件下载的小知识2.2 在自己的Linux系统下验证yum源的存在2.3 利用yum指令下载软件2.4 拓展yum源&#xff08;针对于虚拟机用户&#xff09; 3. vim编辑器3.1 vim是什么&#xff1f;3.2 如何打开vim3.2 vim各模式下的讲解3.2.1…...

MacBook 使用 brew 安装 MySQL

目录 &#xff08;1&#xff09;准备工作1.1 更新 brew &#xff08;2&#xff09;正式安装2.1 安装MySQL&#xff1a;2.2 启动mysql &#xff08;3&#xff09;初始化数据库3.1 选择验证密码组件3.2 密码强度3.3 删除匿名用户3.4 禁用root用户远程连接3.5 删除test数据库3.6 重…...

java中有两个list列表,尽量少的去循环

java中有两个list列表&#xff0c;一个list列表是paymentRecord&#xff0c;另外一个list是listApplyBase&#xff0c;paymentRecord中的lendCode字段值跟listApplyBase中的repaymentCode字段值是对应的&#xff0c;用stream流去循环paymentRecord列表&#xff0c;然后判断当pa…...

Java中的状态机实现:使用Spring State Machine管理复杂状态流转

在软件开发中&#xff0c;我们经常会遇到需要处理各种状态以及状态之间转换的场景。这些状态转换有时会变得非常复杂&#xff0c;特别是当涉及到多个状态&#xff0c;并且每个状态都有多个可能的触发事件导致不同的状态变化时。手动编写这样的逻辑不仅容易出错&#xff0c;而且…...

[Notes] Computer Network - Overwiew

What is the Internet? The Internet is a global network of interconnected computers that communicate using standard protocols (rules). It’s not a single entity but a network of networks that allows millions of devices worldwide to exchange data. In simp…...

MyBatisPlus——学习笔记

MyBatisPlus 一、导入依赖 <!-- MyBatisPlus --><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.5.2</version></dependency><!-- MySql --><de…...

运维自动化shell脚本总结

运维自动化是提升IT管理效率的关键&#xff0c;使用Shell脚本可以有效地实现许多日常任务的自动化。以下是一些常见的Shell脚本应用及其总结&#xff0c;涵盖基本概念、实用示例和最佳实践。 1. Shell脚本基础 1.1 Shell脚本定义 Shell脚本是一系列命令的集合&#xff0c;通…...

前端学习第三天笔记 JavaScript JavaScript的引入 数据类型 运算符 条件语句 字符串

这里写自定义目录标题 JavaScriptJavaScript引入到文件嵌入到HTML文件中引入本地独立js文件引入网络来源文件 JavaScript的注释方式嵌入在HTML文件中的注释JavaScript的输出方式数据类型原始类型&#xff08;基础类型&#xff09;合成类型&#xff08;复合类型&#xff09; 运算…...

C++教程一口气讲完!(万字讲解)( ̄y▽ ̄)╭ Ohohoho... 下

C 常量 常量是固定值&#xff0c;在程序执行期间不会改变。这些固定的值&#xff0c;又叫做字面量。 常量可以是任何的基本数据类型&#xff0c;可分为整型数字、浮点数字、字符、字符串和布尔值。 常量就像是常规的变量&#xff0c;只不过常量的值在定义后不能进行修改。 …...

unity软件安装教程

目录 一、Unity Hub的安装 二、Unity Hub的基础设置 语言切换 安装默认路径 安装unity编辑器和visual Studio 申请许可证 创建新项目 Unity和Visual Studio进行绑定 一、Unity Hub的安装 打开浏览器输入以下网址&#xff1a;unity.cn&#xff0c;打开unity官网 点击下载&#x…...

[大语言模型-论文精读] 更大且更可指导的语言模型变得不那么可靠

[大语言模型-论文精读] 更大且更可指导的语言模型变得不那么可靠 目录 文章目录 [大语言模型-论文精读] 更大且更可指导的语言模型变得不那么可靠目录0. 摘要1. 核心内容3. 创新点4. 算法模型5. 实验效果6. 重要数据与实验结论7. 推荐阅读指数&#xff1a;8. 推荐理由 后记 论文…...

云手机可以解决TikTok运营的哪些问题?

随着社交媒体的飞速发展&#xff0c;TikTok迅速崛起&#xff0c;成为个人和企业进行品牌宣传和内容创作的首选平台。然而&#xff0c;在运营TikTok账号的过程中&#xff0c;不少用户会遇到各种问题。本文将详细阐述云手机如何帮助解决这些问题。 1. 多账号管理的高效便捷 通过云…...

Redis基础三(redis的高级配置)

Redis进阶配置 一、Redis持久化操作 ​ 持久化就是把内存的数据写到磁盘中去&#xff0c;防止服务宕机了内存数据丢失。&#xff08;Redis 数据都放在内存中。如果机器挂掉&#xff0c;内存的数据就不存在。所以需要做持久化&#xff0c;将内存中的数据保存在磁盘&#xff0c…...

Telnet、SSH、RDP和VNC

Telnet、SSH、RDP和VNC都是远程访问和管理的协议或工具&#xff0c;它们各自具有不同的特点和适用场景。 一、基本概念与用途 Telnet 定义&#xff1a;一种基于命令行界面的远程管理协议&#xff0c;允许用户通过网络远程访问和管理计算机。用途&#xff1a;主要用于远程登录和…...

FiBiNET模型实现推荐算法

1. 项目简介 A031-FiBiNET模型项目是一个基于深度学习的推荐系统算法实现&#xff0c;旨在提升推荐系统的性能和精度。该项目的背景源于当今互联网平台中&#xff0c;推荐算法在电商、社交、内容分发等领域的广泛应用。推荐系统通过分析用户的历史行为和兴趣偏好&#xff0c;预…...

影刀RPA:Excel内容填充指令

1.实战目标 本次主要介绍影刀RPA如何操作内容相关的填充与替换指令。主要包含以下 这些指令在数据处理方面有着重要的作用&#xff0c;可以对数据做运算&#xff0c;填充&#xff0c;替换&#xff0c;实现数据格式统一&#xff0c;便于最终的数据分析。在操作的过程中&#xf…...

Python爬虫实战:研究MechanicalSoup库相关技术

一、MechanicalSoup 库概述 1.1 库简介 MechanicalSoup 是一个 Python 库,专为自动化交互网站而设计。它结合了 requests 的 HTTP 请求能力和 BeautifulSoup 的 HTML 解析能力,提供了直观的 API,让我们可以像人类用户一样浏览网页、填写表单和提交请求。 1.2 主要功能特点…...

椭圆曲线密码学(ECC)

一、ECC算法概述 椭圆曲线密码学&#xff08;Elliptic Curve Cryptography&#xff09;是基于椭圆曲线数学理论的公钥密码系统&#xff0c;由Neal Koblitz和Victor Miller在1985年独立提出。相比RSA&#xff0c;ECC在相同安全强度下密钥更短&#xff08;256位ECC ≈ 3072位RSA…...

DeepSeek 赋能智慧能源:微电网优化调度的智能革新路径

目录 一、智慧能源微电网优化调度概述1.1 智慧能源微电网概念1.2 优化调度的重要性1.3 目前面临的挑战 二、DeepSeek 技术探秘2.1 DeepSeek 技术原理2.2 DeepSeek 独特优势2.3 DeepSeek 在 AI 领域地位 三、DeepSeek 在微电网优化调度中的应用剖析3.1 数据处理与分析3.2 预测与…...

【人工智能】神经网络的优化器optimizer(二):Adagrad自适应学习率优化器

一.自适应梯度算法Adagrad概述 Adagrad&#xff08;Adaptive Gradient Algorithm&#xff09;是一种自适应学习率的优化算法&#xff0c;由Duchi等人在2011年提出。其核心思想是针对不同参数自动调整学习率&#xff0c;适合处理稀疏数据和不同参数梯度差异较大的场景。Adagrad通…...

【WiFi帧结构】

文章目录 帧结构MAC头部管理帧 帧结构 Wi-Fi的帧分为三部分组成&#xff1a;MAC头部frame bodyFCS&#xff0c;其中MAC是固定格式的&#xff0c;frame body是可变长度。 MAC头部有frame control&#xff0c;duration&#xff0c;address1&#xff0c;address2&#xff0c;addre…...

Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决

Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决 问题背景 在一个基于 Spring Cloud Gateway WebFlux 构建的微服务项目中&#xff0c;新增了一个本地验证码接口 /code&#xff0c;使用函数式路由&#xff08;RouterFunction&#xff09;和 Hutool 的 Circle…...

安宝特方案丨船舶智造的“AR+AI+作业标准化管理解决方案”(装配)

船舶制造装配管理现状&#xff1a;装配工作依赖人工经验&#xff0c;装配工人凭借长期实践积累的操作技巧完成零部件组装。企业通常制定了装配作业指导书&#xff0c;但在实际执行中&#xff0c;工人对指导书的理解和遵循程度参差不齐。 船舶装配过程中的挑战与需求 挑战 (1…...

QT3D学习笔记——圆台、圆锥

类名作用Qt3DWindow3D渲染窗口容器QEntity场景中的实体&#xff08;对象或容器&#xff09;QCamera控制观察视角QPointLight点光源QConeMesh圆锥几何网格QTransform控制实体的位置/旋转/缩放QPhongMaterialPhong光照材质&#xff08;定义颜色、反光等&#xff09;QFirstPersonC…...

系统掌握PyTorch:图解张量、Autograd、DataLoader、nn.Module与实战模型

本文较长&#xff0c;建议点赞收藏&#xff0c;以免遗失。更多AI大模型应用开发学习视频及资料&#xff0c;尽在聚客AI学院。 本文通过代码驱动的方式&#xff0c;系统讲解PyTorch核心概念和实战技巧&#xff0c;涵盖张量操作、自动微分、数据加载、模型构建和训练全流程&#…...

rm视觉学习1-自瞄部分

首先先感谢中南大学的开源&#xff0c;提供了很全面的思路&#xff0c;减少了很多基础性的开发研究 我看的阅读的是中南大学FYT战队开源视觉代码 链接&#xff1a;https://github.com/CSU-FYT-Vision/FYT2024_vision.git 1.框架&#xff1a; 代码框架结构&#xff1a;readme有…...