decode语句不能再嵌套_自学C++基础教程【流程控制语句】(for、while 、do while 语句 )...

db97e953244ac5128538025adb026d13.png

for语句

for语句是C++语言所提供的一种功能广泛的循环语句。

下图为for语句的标准形式:

2af483aafd0691386a65a4e4e941ed1f.png

表达式1:通常用于给循环变量赋初值,一般是赋值表达式。

表达式2:通常用于设立循环条件,一般为关系表达式或逻辑表达式。

表达式3:通常用于修改循环变量的值,一般是赋值语句。

for语句的执行顺序是:

(1)计算表达式1的值。

(2)计算表达式2的值,若值为真(非0)则执行循环体一次,否则跳出循环。

(3)计算表达式3的值,转回第2步重复执行

69cd040766333cf94494ded8d564b98b.png

在代码编辑栏输入以下代码,编译查看输出结果:

#include <iostream>

using namespace std;

void main()

{

for( int i=0 ; i<10 ; ++i )

{

cout<<“i = ”<<i<<endl;

}

system(“pause”);

}

在使用for语句时要注意以下4点:

(1)for语句中的各表达式都可省略,但分号间隔符不能少。

(2)在循环变量已赋初值时,可省去表达式1。如省去表达式2或表达式3则将造成无限循环,这时应在循环体内设法结束循环。

(3)循环体可以是空语句。

(4) for语句也可嵌套使用,构成多重循环。

在代码编辑栏输入以下代码,编译测试嵌套for的使用:

#include <iostream>

using namespace std;

void main()

{

for( int i=0; i<10; ++i )

{

for( int j=0; j<10; ++j )

{

cout<<"j = "<<j<<endl;

}

cout<<"i = "<<i<<endl;

}

system(“pause”) ;

}


while 语句

当条件为真时,while 语句反复执行目标语句。

下为while语句的标准形式:

while(表达式)

{

语句;

}

语句是循环体,表达式是循环条件。

计算表达式的值,当值为真(非0)时,执行循环体语句。

9e12ebb0e84d2d406394e127424426cd.png

在代码编辑栏输入以下代码,编译查看输出结果:

#include <iostream>

using namespace std;

void main()

{

int i = 0;

while(i<10)

{

cout<<“ i = ”<<i<<endl;

++i;

}

system(“pause”) ;

}

使用while语句应注意以下4点:

(1)while语句中的表达式一般是关系表达式或逻辑表达式,只要表达式的值为真(非0)即可继续循环。

(2)循环体必须用{}括起来,组成复合语句。

(3)应注意循环条件的选择以避免死循环。

(4)允许while语句的循环体中包含其他while语句,从而形成双重循环或多重循环。

在代码编辑栏输入以下代码, while语句的循环条件为赋值表达式i<100,因此该表达式的值永远为真,而循环体中又没有其他中止循环的手段,因此该循环将无休止地进行下去,形成死循环。

#include <iostream>

using namespace std;

void main()

{

int i = 10;

while(i<100)

{

cout<<i<<endl;

}

system(“pause”);

}


do - while 语句

do-while语句的一般形式为:

do{

语句;

}while(表达式);

语句是循环体,表达式是循环条件。

先执行循环体语句一次,再判断表达式的值,若为真(非0)则继续循环,否则终止循环。

5eeeb0c677603c81ea8d43fe62db9a75.png

在代码编辑栏输入以下代码,编译查看输出结果:

#include <iostream>

using namespace std;

void main()

{

int i = 0;

do

{

cout<<i<<endl;

++i;

}while(i>10);

system(“pause”);

}

使用do-while语句还应注意以下4点:

(1)在if语句,while语句中,条件表达式后面都不能加分号,而在do-while语句的条件表达式后面则必须加分号。

(2)do-while语句也可以组成多重循环,而且可以和while语句相互嵌套。

(3)当do和while之间的循环体由多个语句组成时,必须用大括号括起来组成一个复合语句。

(4)do-while和while语句相互替换时,要注意修改循环控制条件。

do-while语句和while语句的区别在于do-while是先执行后判断,因此do-while至少要执行一次循环体。而while是先判断后执行,如果条件不满足则一次循环体语句也不执行。

while语句和do-while语句一般都可以相互改写。

C++语言中提供了4种转移语句:

46c67f80912d25d37130e2a3f94d3867.png

“return”语句只能出现在函数中,用于结束当前函数的调用并返回当前函数需要返回的值

break语句

break语句只能用在switch语句或循环语句中,其作用是跳出switch语句或跳出本层循环,转去执行后面的程序。

b624e7c3c91b6971ebc6aaf7dae4c6d1.png

在代码编辑栏输入以下代码,编译查看输出结果:

#include <iostream>

using namespace std;

void main()

{

int iValue = 13;

for( int i=0; i<100; ++i )

{

if( iValue == i)

{

break;

}

cout<<i<<endl;

}

system(“pause”);

}

continue 语句

continue语句只能用于循环中,结束本次循环,即不再执行循环体中continue 语句之后的语句,转入下一次循环条件的判断与执行。

955a9cd076a7e9f48d23dde9515255e5.png

在代码编辑栏输入以下代码,编译查看输出结果:

#include <iostream>

using namespace std;

void main()

{

for( int i=0; i<100; ++i )

{

if(i%2==0)

{

continue;

}

cout<<i<<endl;

}

system(“pause”);

}

goto 语句

goto 语句也称为无条件转移语句.是按标识符规定书写的符号,放在某一语句行的前面,后面需要加冒号“:”。

goto 语句标号;

goto语句的语义是改变程序流向,转去执行语句标号所标识的语句。

#include <iostream>

using namespace std;

void main()

{

label: i++;

cout<<“i = ”<<i<<endl;

goto label;

system(“pause”);

}

由于 goto 语句特性,它也被认为是C语言编程时代程序执行流程混乱的罪魁祸首

使用C++编程应避免使用goto语句

自学C/C++资料链接:https://pan.baidu.com/s/1N4vZYeRPA4y2P42rP_t_JQ

提取码:ktb7

学习从来都不是一个人的事,如果你感觉小编的这篇文章对你有帮助的话,可以关注小编首页和小编来一起学习C/C++语言,小编会持续更新后续的内容哦!!

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CentOS 7 利用Docker搭建禅道系统

1&#xff0c;系统环境 a&#xff0c;操作系统 CentOS Linux release 7.6.1810 (Core) 64位 b&#xff0c;确保Docker环境已经安装&#xff0c;具体教程请看 CentOS 安装docker 禅道系统一键安装说明文档&#xff1a;http://www.zentao.net/book/zentaopmshelp/90.html …

centos7 docker删除端口映射_centos7安装docker,结合docker安装mysql,学习简单使用

需要快速安装centos7的可以结合上一遍文章vagrant结合virtualbox让你直接在cmd窗口操作linux系统centos7地址&#xff1a;https://www.toutiao.com/i6858180977164812811/?group_id6858180977164812811Docker先说一下个人理解&#xff1a;docker其实就是一个工具&#xff0c;镜…

MongoDB中关于64位整型存储解决方案

为什么80%的码农都做不了架构师&#xff1f;>>> 社区内一哥们smcboy 提出关于php中操作MongoDB存储整数问题&#xff0c;找到点资料花点时间翻译过来&#xff0c;是个很好的学习方式。红薯 那篇讨论我的修改回复&#xff0c;仍然没有更新可恶啊~&#xff01;&#…

切割图形_泉州泡沫景观字切割机厂家

泉州泡沫景观字切割机厂家 jz4rw0qv泉州泡沫景观字切割机厂家 巨源线条切割机同步带型结构合理、性能、精密度高、、操作简便、价格合理&#xff0c;比同行业同款机床更高&#xff0c;是原有同步带型泡沫切割机的替代产品。自动编程使用计算机利用配合切割机应用&#xff0c;只…

你的搜索其实很糟糕?

为什么80%的码农都做不了架构师&#xff1f;>>> 日期&#xff1a;2013-3-27 来源&#xff1a;GBin1.com 尽管你非常擅长搜索&#xff0c;但是很多时候搜索内容和你想要的并不吻合。事实上&#xff0c;用户体验专家Jakob Nielsen认为大多数人都非常的不擅长搜索。…

Element Tree型控件

效果 前端 <template><div class"app-container"><el-inputplaceholder"输入关键字进行过滤"、<! -- 双向绑定-- >v-model"filterText"></el-input><el-tree ref"tree":data"subjectList"…

快速根据注释生成接口文档网页工具——Apidoc的使用教程

环境&#xff1a; 操作系统 CentOS Linux release 7.6.1810 (Core) 64位 服务器环境 “腾讯云”服务器 1&#xff0c;安装Node.js的npm工具环境&#xff1a; 如有不懂&#xff0c;请看我的博客&#xff1a;CentOS7 源码编译安装NodeJS 最新版本 2&#xff0c;npm环境搭…

频段表_5G频段范围之:频段3.3GHz-4.2GHz (n77,n78)

本文版权归“5G通信(tongxin5g)”和5G哥所有&#xff0c;未经授权&#xff0c;请勿转载比起以前的移动通信网络&#xff0c;5G探索的新频谱范围包括&#xff1a;3.3GHz-4.2GHz&#xff0c;4.4GHz-5.0GHz&#xff0c;24.25-29.5 GHz今天主要看频段3.3GHz-4.2GHz在3GPP中&#xf…

公开说说别人看不到_当听到别人在说自己坏话时,心里是什么感受?

人有优点也有缺点这世界上&#xff0c;没有人的性格可以做到十全十美。没有任何一个人从头到尾都是完美无缺的。一个人自从慢慢的长大后&#xff0c;在不断的社交活动中&#xff0c;就会慢慢的观察别人身上的优点或者缺点了。很奇怪&#xff0c;人的这种能力和本领好像是不需要…

CentOS 7 利用Docker搭建Showdoc文档管理系统

1&#xff0c;系统环境 a&#xff0c;操作系统 CentOS Linux release 7.6.1810 (Core) 64位 b&#xff0c;确保Docker环境已经安装&#xff0c;具体教程请看 CentOS 安装docker Docker部署Showdoc官方教程&#xff1a;https://www.showdoc.cc/help?page_id65610 2&…

深度学习attention原理_深度学习Anchor Boxes原理与实战技术

深度学习Anchor Boxes原理与实战技术目标检测算法通常对输入图像中的大量区域进行采样&#xff0c;判断这些区域是否包含感兴趣的目标&#xff0c;并调整这些区域的边缘&#xff0c;以便更准确地预测目标的地面真实边界框。不同的模型可能使用不同的区域采样方法。在这里&#…

Linux利用nginx-gridfs搭建部署Nginx和MongoDB文件服务器,支持用户密码验证!

nginx-gridfs是一个nginx的扩展模块&#xff0c;用于支持直接访问MongoDB的GridFS文件系统上的文件并提供 HTTP 访问 1&#xff0c;安装nginx&#xff0c;下载好安装包nginx和nginx-gridfs&#xff0c;此次安装采用nginx1.12.2. mkdir -p /data/soft/nginx-mongodb/ # 创建…

三行代码生成验证码并转换成base64

使用 Hutool 工具类 import cn.hutool.captcha.CaptchaUtil; import cn.hutool.captcha.LineCaptcha; import cn.hutool.core.io.FileUtil; import cn.hutool.core.lang.Console; import sun.misc.BASE64Encoder;import java.io.File; import java.io.FileInputStream; import…

docker 创建容器报: Error response from daemon: C: drive is not shared.

报错 C:\Program Files\Docker\Docker\Resources\bin\docker.exe: Error response from daemon: C: drive is not shared. Please share it in Docker for Windows Settings. See C:\Program Files\Docker\Docker\Resources\bin\docker.exe run --help.这时候我们需要绑定盘符…

CentOS 7 搭建swagger Api文档管理系统

1&#xff0c;系统环境 a&#xff0c;操作系统 CentOS Linux release 7.6.1810 (Core) 64位 b&#xff0c;安装Node.js的npm工具环境&#xff1a; # Node 官网已经把 linux 下载版本更改为已编译好的版本了&#xff0c;我们可以直接下载解压后使用&#xff1a; wget http…

宽带和流量是分开的吗_为什么现在的手机套餐与宽带越来越贵,只是因为建设5G吗?...

不知道你有没有这样一种感觉&#xff0c;手机的资费越来越高&#xff0c;并且宽带的资费也是开始上涨&#xff0c;随着5G时代的来到&#xff0c;我们现在的现在的的流量使用量也是越来越大&#xff0c;还记得2018的话费套餐最便宜的最低的只要8块钱&#xff0c;而29元能够办理包…

CentOS7 源码编译安装Redis shell脚本

1&#xff0c;系统环境 操作系统 CentOS Linux release 7.6.1810 (Core) 64位 2&#xff0c;执行以下命令完成安装 yum install -y gcc # 安装依赖包wget http://download.redis.io/releases/redis-5.0.5.tar.gz # 下载Redis安装包 tar -xzvf redis-5.0.5.tar.gzcd red…

SpringBoot 集成WebSocket

什么是WebSocket WebSocket 是一种网络通信协议&#xff0c;很多高级功能都需要它。 我们已经有了 HTTP 协议&#xff0c;为什么还需要另一个协议&#xff1f;它能带来什么好处&#xff1f; 因为 HTTP 协议有一个缺陷&#xff1a;通信只能由客户端发起。 如果我们想要服务器给…

大学电路题目怎么搜_长沙理工大学2020真题浅析

长沙理工大学2020年821电路&#xff0c;整体感觉难度还行&#xff0c;和邱版《电路》课后题的平均水平相当。整张卷子由9道填空题和七道大题目构成&#xff0c;填空一题5分&#xff0c;大题一题15分。先说说填空&#xff0c;1是一个等效电阻&#xff0c;当然上来先观察下平衡电…

CentOS 7 搭建RAP2r Api文档管理系统

1&#xff0c;系统环境 a&#xff0c;操作系统 CentOS Linux release 7.6.1810 (Core) 64位 2&#xff0c;安装npm环境&#xff1a; # Node 官网已经把 linux 下载版本更改为已编译好的版本了&#xff0c;我们可以直接下载解压后使用&#xff1a; wget https://nodejs.org…