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

【C++ 程序设计入门基础】- 第3节-循环结构01

目录

循环结构

一、for 语句

for 循环案例

 输入一个整数n,输出1~n的所有整数。

编译运行,查看输出结果

编译调试

for 循环结构语义分析

二、beak 语句

三、continue 语句

 案例1:

 案例2:

 案例3:


循环结构

在实际生活中,经常会将同一件事情重复做很多次,在 C++ 语言中,也经常需要重复执行同一代码块,这时就需要使用循环结构

一、for 语句

for 循环案例
 输入一个整数n,输出1~n的所有整数。
#include <iostream>
#include <windows.h>
using namespace std;int main(){/**输入一个整数n,输出1~n的所有整数。**/int n;cin>>n;for(int i=1;i<=n;i++){cout<<i<<"\n"<<endl;}return 0;
}
编译运行,查看输出结果

 

编译调试

1、工具》编译选项》代码生成/优化》连接器 然后在”产生调试信息“那里吧 no 改为 yes

2、设置断点

3、点击菜单 运行-调试,按F5也是可以的,或者点击工具栏上的那个 √ 也是可以开始调试的。叉号是停止调试。

4、设置需要监控的对象

5、点击查看对象,输入 i 这时候我们就可以查看 i 每一步的输出值了。 

下一步,是单步执行,但是不进入子函数。

单步进入,单步执行,进入子函数。

跳过跳过函数很明白了。

下一条语句,在汇编代码就可以看到,是逐句执行汇编代码

进入语句,也是在汇编代码中可以看到,也是逐句执行汇编代码。

但是它与 下一步语句 区别是,下一条语句不会进入到系统调用,比如标准库的汇编代码,但是进入语句 会进入标准库的汇编代码。 

注:调试程序,大家可以自行去练习一下,多动手时间跟踪一下,你就会很熟练了。

for 循环结构语义分析

二、beak 语句

break语句是指直接跳出所在的循环。注:break 只能跳出当前所在的循环体。

 输入一个整数n,输出1~n的所有整数,遇到5时停止。

#include <iostream>
#include <windows.h>
using namespace std;int main(){/**输入一个整数n,输出1~n的所有整数,遇到5时停止。**/int n;cin>>n;for(int i=1;i<=n;i++){if(i==5)break;cout<<i<<"\n";}cout<<"this is a break test";return 0;
}

运行查看结果

 

三、continue 语句

continue语句是指直接执行下一次循环。

 案例1:

输入一个整数n,输出1~n的所有整数,遇到偶数时不输出。

#include <iostream>
#include <windows.h>
using namespace std;int main(){/**输入一个整数n,输出1~n的所有整数,遇到偶数时不输出。**/int n;cin>>n;for(int i=1;i<=n;i++){if(i%2==0)continue;cout<<i<<"\n";}cout<<"this is a continue test";return 0;
}

运行查看结果

 案例2:

输入一个整数n(0<n<10),输出n! 。

#include <iostream>
#include <windows.h>
using namespace std;int main(){/**** 输入一个整数n(0<n<10),输出n的阶乘 n! * n!= n*(n-1)*(n-2)*...1***/long long n,fac=1;cin>>n;for(int i=1;i<=n;i++){fac = fac*i;//fac*=i;}cout <<"fac="<<fac<<endl;//flush 刷新缓存区return 0;
}

查看运行结果 

 案例3:

输出斐波那契数列第10项( F(1)= F(2)= 1; F(N)= F(N-1) + F(N-2) )。

注:什么叫斐波那契数列?直白点就是当前数据项的值等于它前两项的数值之和。

斐波那契数列(Fibonacci sequence),又称黄金分割数列,因数学家莱昂纳多·斐波那契(Leonardo Fibonacci)以兔子繁殖为例子而引入,故又称“兔子数列”,其数值为:1、1、2、3、5、8、13、21、34……在数学上,这一数列以如下递推的方法定义:F(0)=1,F(1)=1, F(n)=F(n - 1)+F(n - 2)(≥ 2,∈ N*)。

#include <iostream>
#include <windows.h>
using namespace std;
/*** 输出斐波那契数列第10项( F(1)= F(2)= 1; F(N)= F(N-1) + F(N-2) )
**/
//定义一个int数组
long long f[100+5];
int main(){f[1]=f[2]=1;for(int i=3;i<=100;i++){f[i]=f[i-1]+f[i-2];}cout<<"f[10]="<<f[10]<<endl;return 0;
}

运行结果:

下一节讲解循环结构 while 语句的用法 

相关文章:

【C++ 程序设计入门基础】- 第3节-循环结构01

目录 循环结构 一、for 语句 for 循环案例 输入一个整数n&#xff0c;输出1&#xff5e;n的所有整数。 编译运行&#xff0c;查看输出结果 编译调试 for 循环结构语义分析 二、beak 语句 三、continue 语句 案例1&#xff1a; 案例2&#xff1a; 案例3&#xff1a; 循环…...

人工智能原理复习--知识表示(一)

文章目录 上一篇知识概述命题逻辑谓词逻辑谓词逻辑的应用 下一篇 上一篇 人工智能原理复习–绪论 知识概述 知识就是人类认识自然界的精神产物&#xff0c;是人类进行智能活动的基础。 是经过加工的信息&#xff0c;包括事实、信念和启发式规则。 分类&#xff1a; 按作用可…...

网络运维与网络安全 学习笔记2023.11.28

网络运维与网络安全 学习笔记 第二十九天 今日目标 OSPF汇总之域间路由、OSPF汇总之外部路由、OSPF链路认证 OSPF安全认证之区域认证、OSPF虚链路 OSPF汇总指域间路由 项目背景 企业内网运行多区域的OSPF网络&#xff0c;在R1 上存在多个不稳定的链路 R1上的不稳定链路&a…...

Rust开发——数据对象的内存布局

枚举与Sized 数据 一般数据类型的布局是其大小&#xff08;size&#xff09;、对齐方式&#xff08;align&#xff09;及其字段的相对偏移量。 1. 枚举&#xff08;Enum&#xff09;的布局&#xff1a; 枚举类型在内存中的布局通常是由编译器来确定的。不同的编译器可能有不…...

mySQL踩坑记录

1.MYSQL Workbench-8.0.27.1出现"Exception: Current profile has no WMI enabled"错误的解决方法 MYSQL Workbench-8.0.27.1出现“Exception: Current profile has no WMI enabled“错误的解决方法_赛风扥的博客-CSDN博客 C:\Program Files\MySQL\MySQL Workbench …...

【Java】使用 IDEA 快速生成 SpringBoot 模块

项目目录下新建 module 模块 在 pom.xml 更改为 spring initializr 配置之后的 pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchem…...

2023网络安全产业图谱

1. 前言 2023年7月10日&#xff0c;嘶吼安全产业研究院联合国家网络安全产业园区&#xff08;通州园&#xff09;正式发布《嘶吼2023网络安全产业图谱》。 嘶吼安全产业研究院根据当前网络安全发展规划与趋势发布《嘶吼2023网络安全产业图谱》调研&#xff0c;旨在进一步了解…...

一则 MongoDB 副本集迁移实操案例

文中详细阐述了通过全量 增量 Oplog 的迁移方式&#xff0c;完成一套副本集 MongoDB 迁移的全过程。 作者&#xff1a;张然&#xff0c;DBA 数据库技术爱好者~ 爱可生开源社区出品&#xff0c;原创内容未经授权不得随意使用&#xff0c;转载请联系小编并注明来源。 本文约 900…...

2022年03月 Scratch图形化(四级)真题解析#中国电子学会#全国青少年软件编程等级考试

Scratch等级考试(1~4级)全部真题・点这里 一、单选题(共10题,每题2分,共30分) 第1题 由1,2,3,4,5,0这六个数字经过排列组合能够组成多少个六位数偶数?注意:每一位都不相同,最高位不能为0。 A:720 B:360 C:312 D:88 答案:C 逻辑知识单选题 第2题 运行以下程…...

传音荣获2023首届全国人工智能应用场景创新挑战赛“智能家居专项赛”三等奖

近日&#xff0c;中国人工智能学会与科技部新一代人工智能发展研究中心联合举办2023首届全国人工智能应用场景创新挑战赛&#xff08;2023 1st China’s Innovation Challenge on Artificial Intelligence Application Scene&#xff0c;以下简称CICAS 2023)&#xff0c;吸引了…...

SQL注入-SQL注入过程

SQL注入的过程 手工注入过程 (1) 判断是否存在注入点; (2) 判断字段长度(字段数); (3) 判断字段回显位置; (4) 判断数据库信息; (5) 查找数据库名; (6) 查找数据库表; (7) 查找数据库表中所有字段以及字段值; (8) 猜解账号密码; (9) 登录管理员后台; 以sql-labs less-2举例 会…...

选择更灵活的设计工具:SOLIDWORKS 软件网络版与单机版的比较

随着科技的飞速发展&#xff0c;工程设计领域对于高效、灵活的设计工具需求日益增加。SOLIDWORKS 作为一款广受欢迎的三维设计软件&#xff0c;提供了网络版和单机版两种选择。在本文中&#xff0c;我们将深入探讨这两个版本的区别&#xff0c;并为您详细介绍它们的价格差异。 …...

Go语言中获取协程ID

简介 java同事都知道&#xff0c;线程会有对应的id&#xff0c;那么go语言中协程有id吗&#xff0c;其实是有的&#xff0c;但是不建议使用。 实在需要使用的话可以使用本文的例子获取 stack 我们先看一下runtime.Stack打印出来的栈结构&#xff0c;其中就包括了协程id fu…...

CH58x-BLE 程序阅读笔记

CH58x-BLE 程序阅读笔记 1. 广播1.1 广播类型设置1.2 广播数据长度 2. MTU设置2.1 CH58x 蓝牙协议栈支持有效最大MTU为247 1. 广播 1.1 广播类型设置 1.2 广播数据长度 1&#xff09; GAP-广播数据&#xff08;最大大小31字节&#xff0c;但最好保持较短以节省广告时的电量&a…...

ST53xx 系列是一种高精度、高输入电压、低静态电流、高速度、低压差线性稳压器

ST53xxS/T 40V&#xff0c;低静态电流&#xff0c;高可靠性 LDO 概述&#xff1a; ST53xx 系列是一种高精度、高输入电压、低静态电流、高速度、低压差线性稳压器&#xff0c;具有高纹波抑制能力。在 Vour 5V VIN 7V 时&#xff0c;输入电压高达40V&#xff0c;负载电流高达300…...

麻雀搜索优化算法MATLAB实现,SSA-BP网络

对于麻雀搜索算法的介绍&#xff0c;网上已经有不少资料了&#xff0c;这边公布SSA的matlab实现 下面展示SSA算法的核心代码以及详细注解 % 麻雀搜索算法函数定义 % 输入&#xff1a;种群大小(pop)&#xff0c;最大迭代次数(Max_iter)&#xff0c;搜索空间下界(lb)&#xff0c…...

142. 环形链表 II --力扣 --JAVA

题目 给定一个链表的头节点 head &#xff0c;返回链表开始入环的第一个节点。 如果链表无环&#xff0c;则返回 null。 如果链表中有某个节点&#xff0c;可以通过连续跟踪 next 指针再次到达&#xff0c;则链表中存在环。 为了表示给定链表中的环&#xff0c;评测系统内部使…...

深入浅出 Vue 中的插槽 slot

深入浅出 Vue 中的插槽 slot start 最近被问到好几次 Vue 中的插槽相关知识&#xff0c;掌握的还是有些不全面。抱着重新学习的心态&#xff0c;写这篇博客。首先对基础知识做一个回顾&#xff0c;然后再对源码实现做一个学习。作者&#xff1a;番茄编写时间&#xff1a;2023…...

postgreSQL 查询所有模式的语句

场景 postgre 数据库下携带模式的分组 sql select schema_name from information_schema.schemata;...

pandas教程:Introduction to scikit-learn scikit-learn简介

文章目录 13.4 Introduction to scikit-learn&#xff08;scikit-learn简介&#xff09; 13.4 Introduction to scikit-learn&#xff08;scikit-learn简介&#xff09; scikit-learn是一个被广泛使用的python机器学习工具包。里面包含了很多监督式学习和非监督式学习的模型&a…...

使用VSCode开发Django指南

使用VSCode开发Django指南 一、概述 Django 是一个高级 Python 框架&#xff0c;专为快速、安全和可扩展的 Web 开发而设计。Django 包含对 URL 路由、页面模板和数据处理的丰富支持。 本文将创建一个简单的 Django 应用&#xff0c;其中包含三个使用通用基本模板的页面。在此…...

关于nvm与node.js

1 安装nvm 安装过程中手动修改 nvm的安装路径&#xff0c; 以及修改 通过nvm安装node后正在使用的node的存放目录【这句话可能难以理解&#xff0c;但接着往下看你就了然了】 2 修改nvm中settings.txt文件配置 nvm安装成功后&#xff0c;通常在该文件中会出现以下配置&…...

macOS多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用

文章目录 问题现象问题原因解决办法 问题现象 macOS启动台&#xff08;Launchpad&#xff09;多出来了&#xff1a;Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用。 问题原因 很明显&#xff0c;都是Google家的办公全家桶。这些应用并不是通过独立安装的…...

基于Docker Compose部署Java微服务项目

一. 创建根项目 根项目&#xff08;父项目&#xff09;主要用于依赖管理 一些需要注意的点&#xff1a; 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件&#xff0c;否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...

【配置 YOLOX 用于按目录分类的图片数据集】

现在的图标点选越来越多&#xff0c;如何一步解决&#xff0c;采用 YOLOX 目标检测模式则可以轻松解决 要在 YOLOX 中使用按目录分类的图片数据集&#xff08;每个目录代表一个类别&#xff0c;目录下是该类别的所有图片&#xff09;&#xff0c;你需要进行以下配置步骤&#x…...

04-初识css

一、css样式引入 1.1.内部样式 <div style"width: 100px;"></div>1.2.外部样式 1.2.1.外部样式1 <style>.aa {width: 100px;} </style> <div class"aa"></div>1.2.2.外部样式2 <!-- rel内表面引入的是style样…...

NLP学习路线图(二十三):长短期记忆网络(LSTM)

在自然语言处理(NLP)领域,我们时刻面临着处理序列数据的核心挑战。无论是理解句子的结构、分析文本的情感,还是实现语言的翻译,都需要模型能够捕捉词语之间依时序产生的复杂依赖关系。传统的神经网络结构在处理这种序列依赖时显得力不从心,而循环神经网络(RNN) 曾被视为…...

深入解析C++中的extern关键字:跨文件共享变量与函数的终极指南

&#x1f680; C extern 关键字深度解析&#xff1a;跨文件编程的终极指南 &#x1f4c5; 更新时间&#xff1a;2025年6月5日 &#x1f3f7;️ 标签&#xff1a;C | extern关键字 | 多文件编程 | 链接与声明 | 现代C 文章目录 前言&#x1f525;一、extern 是什么&#xff1f;&…...

自然语言处理——循环神经网络

自然语言处理——循环神经网络 循环神经网络应用到基于机器学习的自然语言处理任务序列到类别同步的序列到序列模式异步的序列到序列模式 参数学习和长程依赖问题基于门控的循环神经网络门控循环单元&#xff08;GRU&#xff09;长短期记忆神经网络&#xff08;LSTM&#xff09…...

全志A40i android7.1 调试信息打印串口由uart0改为uart3

一&#xff0c;概述 1. 目的 将调试信息打印串口由uart0改为uart3。 2. 版本信息 Uboot版本&#xff1a;2014.07&#xff1b; Kernel版本&#xff1a;Linux-3.10&#xff1b; 二&#xff0c;Uboot 1. sys_config.fex改动 使能uart3(TX:PH00 RX:PH01)&#xff0c;并让boo…...