C++青少年简明教程:for循环语句

C++青少年简明教程:for循环语句

C++的for循环语句是一种迭代控制语句,用于重复执行一段代码。

语法格式:

for(表达式1;表达式2;表达式3)

循环体

for循环语句执行流程图:

不太好理解,请看下图:

用for语句计算1到10的整数之和的源码:

#include<iostream> 
using namespace std;

int main(){
	int sum = 0, n = 10;
	for (int i = 1; i <= n; i++) {
	    sum += i;
	}
	
	cout << "1到" << n << "的整数之和为:" << sum << endl;
}

for语句可以嵌套,下面是一个使用嵌套循环打印乘法口诀表的例子:

#include<iostream> 
using namespace std;

int main(){
	for (int i = 1; i <= 9; i++) {
	    for (int j = 1; j <= i; j++) {
	        cout << j << "x" << i << "=" << i*j << " ";
	    }
	    cout << endl;
	}
}

这个程序使用两个for循环嵌套,分别用于打印乘法口诀表的每一行和每一列。内层循环中,j从1逐渐增加到i,每次循环将j和i的乘积打印出来;外层循环中,i从1逐渐增加到9,每次循环打印出一个乘法口诀表的行。最终的输出结果如下:

1x1=1 
1x2=2 2x2=4 
1x3=3 2x3=6 3x3=9 
1x4=4 2x4=8 3x4=12 4x4=16 
1x5=5 2x5=10 3x5=15 4x5=20 5x5=25 
1x6=6 2x6=12 3x6=18 4x6=24 5x6=30 6x6=36 
1x7=7 2x7=14 3x7=21 4x7=28 5x7=35 6x7=42 7x7=49 
1x8=8 2x8=16 3x8=24 4x8=32 5x8=40 6x8=48 7x8=56 8x8=64 
1x9=9 2x9=18 3x9=27 4x9=36 5x9=45 6x9=54 7x9=63 8x9=72 9x9=81

注意,在 C++ 的 for 循环语句中,控制变量的定义可以在括号内或括号外进行。

如果在括号内定义控制变量,那么该变量的作用范围仅限于 for 循环的代码块内部。这意味着该变量只在循环执行期间可见,并且在每次循环迭代结束时都会销毁和重新创建。

在括号内定义控制变量:

for (int i = 0; i < 5; i++) {

    // 在这里可以使用控制变量 i

    // 控制变量 i 的作用范围仅限于当前的循环代码块

}

// 这里无法使用控制变量 i,因为它已经超出了作用范围

如果在括号外定义控制变量,那么该变量的作用范围将扩展到整个循环语句所在的代码块内部。这意味着该变量在循环之外也是可见的,并且在循环迭代之间保持其状态。

在括号外定义控制变量:

int i;  // 在循环外定义控制变量 i

for (i = 0; i < 5; i++) {

    // 在这里可以使用控制变量 i

    // 控制变量 i 的作用范围扩展到整个代码块

}

// 这里可以使用控制变量 i,因为它仍然在作用范围内

因此,控制变量是在括号内还是括号外定义,会影响该变量的作用范围和可见性。根据您的需求选择适合的方式。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/657737.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

SpringJDBC

1.前言 Spring JDBC可以帮助开发者节省大量开发工作 自动去处理一些低级细节 比如&#xff1a;异常处理、打开和关闭资源(Connection、PreparedStatement、Statement、ResultSet) 需要下载的jar包&#xff1a; spring-jdbc(普通jar包、源码jar包)由于没有依赖其他的jar包 所以只…

探寻数据处理的高效之道:从Python内置方法到NumPy的飞跃

新书上架~&#x1f447;全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我&#x1f446;&#xff0c;收藏下次不迷路┗|&#xff40;O′|┛ 嗷~~ 目录 一、引言&#xff1a;为什么要学习NumPy&#xff1f; 二、案例展示&#xff1a;创建整数序列…

Apifox 更新|编排模式、Markdown 编辑器升级、自动申请 SSL 证书、用户反馈问题优化

Apifox 新版本上线啦&#xff01; 看看本次版本更新主要涵盖的重点内容&#xff0c;有没有你所关注的功能特性&#xff1a; 自动化测试新增「编排模式」Markdown 编辑器全新升级返回响应直接预览 PDF 及视频自动申请 SSL 证书支持配置自定义域名的子目录流式接口支持筛选和清…

Vue 菜单组件开发教程

在 Vue 项目中&#xff0c;我们常常需要构建各种菜单结构。下面就来详细介绍如何基于给定的代码来开发一个菜单组件。 组件部分 一、模板部分 <template> <template v-for"item in menuTree" :key"item._id"> <el-sub-menu v-if"i…

OpenHarmony 适配HDMI接口声卡

高清多媒体接口&#xff08;High Definition Multimedia Interface&#xff0c;HDMI &#xff09;是一种全数字化视频和声音发送接口&#xff0c;可以发送未压缩的音频及视频信号。HDMI可用于机顶盒、DVD播放机、个人计算机、电视、游戏主机、综合扩大机、数字音响与电视机等设…

【智能算法应用】灰狼算法GWO求解三维路径规划问题

目录 1.算法原理2.三维路径规划数学模型3.结果展示4.参考文献5.代码获取 1.算法原理 【智能算法】灰狼算法&#xff08;GWO&#xff09;原理及实现 2.三维路径规划数学模型 三维地形可以等效处理成山峰地形&#xff0c;数学模型为: z ( x , y ) h 0 ∑ j 1 N h j max ⁡…

升级鸿蒙4.2新变化,新增 WLAN 网络自动连接开关!

手机已经成为现代人生活中不可或缺的一部分&#xff0c;手机里的功能可以满足大部分人的生活场景&#xff0c;但是最依赖的应该就是手机网络&#xff0c;手机网络突然变差怎么办——消息发不出去&#xff1f;刷新闻速度变慢&#xff1f;仔细检查后&#xff0c;发现其实不是手机…

OrangePi Kunpeng Pro ——信创再接力

文章目录 OrangePi Kunpeng Pro ——信创再接力1. 绪论1.1 开箱 2. 硬件介绍2.1 硬件配置2.2 硬件清单 3. 网络测试3.1 有线连接3.2 WIFI连接 4.查看系统配置5. 安装常用软件5.1 安装python5.1.1 更换pip源为国内清华源 5.2 安装docker5.3 安装opencv5.4 安装dlib 6.CPU多进程能…

闲话 .NET(3):.NET Framework 的缺点

前言 2016 年&#xff0c;微软正式推出 .NET Core 1.0&#xff0c;并在 2019 年全面停止 .NET Framework 的更新。 .NET Core 并不是 .NET Framework 的升级版&#xff0c;而是一个从头开始开发的全新平台&#xff0c;一个跟 .NET Framework 截然不同的开源技术框架。 微软为…

计算属性与监听属性

【 1 】计算属性 计算属性大致就是这样 # 1 计算属性是基于它们的依赖进行缓存的# 2 计算属性只有在它的相关依赖发生改变时才会重新求值# 3 计算属性就像Python中的property&#xff0c;可以把方法/函数伪装成属性 # 计算属性本质上是一个函数&#xff0c;它们可以通过 get…

UML 在 vs-code上的快速使用

UML 在 vs-code上的快速使用 1.软件准备工作2.创建第一张甘特图2.1 创建 UML文件: xxxx. puml2.2 输入甘特图代码2.3 VS code 生成甘特图 结束 。 1.软件准备工作 使用的软件为&#xff1a;VS CODE使用插件 &#xff1a; PluntUML2.创建第一张甘特图 2.1 创建 UML文件: xxxx. …

基于python flask的疾病数据采集与可视化大屏,实现关联规则算法的治疗方法分析

背景 基于Python Flask的疾病数据采集与可视化大屏&#xff0c;旨在实现对疾病数据的采集、分析和可视化展示&#xff0c;为医疗领域提供决策支持和治疗方法分析。其中&#xff0c;关联规则算法被应用于治疗方法分析&#xff0c;旨在发现不同治疗方式之间的关联性和规律性&…

容器监控方案

1、docker部署prometheus Prometheus是一套开源的系统监控报警框架&#xff0c;它基于时序数据库&#xff0c;并通过HTTP协议周期性地从被监控的组件中抓取指标数据。以下是一些关于Prometheus的详细介绍&#xff1a; 基本概念&#xff1a;Prometheus所有采集的监控数据均以指…

阿里开源React应用动效解决方案:ant-motion

ant-motion&#xff1a;简化动效开发&#xff0c;提升用户体验 - 精选真开源&#xff0c;释放新价值。 概览 Ant Motion是由Ant Design团队精心打造&#xff0c;专为React应用设计的动画规范和组件库。它不仅仅是一套动画规范&#xff0c;更是一个完整的解决方案&#xff0c;旨…

[SCTF2019]Who is he

unity 游戏&#xff0c;直接输入字符串 直接修改 if 判断&#xff0c;看能不能直接输出flag 修改了程序逻辑&#xff0c;但还是输出了 明明已经把这个 if 删了 不知道为什么还会输出这串字符 应该程序还有什么引入吧&#xff0c;看 wp 应该先查一下程序的动态链接库 DLL 是…

探讨大米自动化生产线包装设备的智能化发展趋势

随着科技的飞速发展&#xff0c;智能化已经成为各行各业转型升级的重要方向。在大米生产领域&#xff0c;自动化生产线包装设备的智能化发展更是引领着粮食产业的未来潮流。星派将从智能化技术、市场需求、发展趋势等方面&#xff0c;探讨大米自动化生产线包装设备的智能化发展…

22.Volatile原理

文章目录 Volatile原理1.Volatile语义中的内存屏障1.1.volatile写操作的内存屏障1.1.1.StoreStore 屏障1.1.2.StoreLoad 屏障 1.2.volatile读操作的内存屏障1.2.1.LoadStore屏障1.2.2.LoadLoad屏障 2.volatile不具备原子性2.1.原理 Volatile原理 1.Volatile语义中的内存屏障 在…

多模态大模型:系统、趋势与问题

引言 多模态大模型是当今人工智能领域的热门方向之一。它不仅能处理文本&#xff0c;还能理解和生成图像、视频、语音等多种模态的数据。这种能力使得多模态大模型在自然语言处理、计算机视觉等多个领域展示出巨大的潜力和应用价值。那么&#xff0c;多模态大模型是如何训练出…

web自动化-数据驱动与失败用例截图、失败重新运行

因为只有失败的用例需要截图&#xff0c;那么问题就是&#xff1a; 什么时候用例会失败&#xff1f; 数据驱动测试 我们前面覆盖到的用例都是正常的用例&#xff0c;如果要测试异常的用例呢&#xff1f; 我们来写一下登录的异常 场景&#xff1a;【login_page】 # 用户输入框…

vivado设置Vscode为默认编辑器

D:\vscode\Microsoft VS Code\Code.exe -g [file name]:[line number]