for语句

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

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

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

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

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

for语句的执行顺序是:

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

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

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

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

#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)时,执行循环体语句。

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

#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)则继续循环,否则终止循环。

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

#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种转移语句:

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

break语句

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

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

#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 语句之后的语句,转入下一次循环条件的判断与执行。

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

#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++语言,小编会持续更新后续的内容哦!!

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

  1. switch中case后可以是表达式吗_自学C++基础教程【流程控制语句】(switch语句 )...

    switch语句:又被称之为 分支选择语句,它提供了一种更方便的方法来实现深层嵌套的if.else逻辑: switch语句先计算表达式的值,并逐个与其后的常量表达式的值相比较,当表达式的值与某个常量表 ...

  2. system函数_自学C++基础教程【函数】

    函数的概念 一个函数由:函数的返回值类型.函数名.参数表.函数体 这4个部分组成. int Add( int _a , int _b ) {return _a + _b; } 该函数 Add 完成对两 ...

  3. 6-7 使用函数输出水仙花数_自学C++基础教程(输入输出2)

    与C++语言不同,C语言标准库提供了两个控制台格式化输入输出函数printf( ) 和scanf(), 这两个函数可以在标准输入输出设备上以各种不同的格式读写数据. printf()函数用来向标准输出 ...

  4. java try catch嵌套_解析Java中未被捕获的异常以及try语句的嵌套使用

    Java未被捕获的异常 在你学习在程序中处理异常之前,看一看如果你不处理它们会有什么情况发生是很有好处的.下面的小程序包括一个故意导致被零除错误的表达式. class Exc0 { public st ...

  5. groovy怎样从sql语句中截取表名_《SQL基础教程》学习笔记

    第1章 数据库和SQL 1-3 SQL概要 SQL语句及其种类 DDL-CREATE,DROP,ALTER DML-SELECT,INSERT,UPDATE,DELETE DCL-COMMIT,ROL ...

  6. c++如何让字符串重复输出_如何入门Python之自学python基础教程送你参考

    随着人工智能的发展,Python近两年也是大火,越来越多的人加入到Python学习大军,对于毫无基础的人该如何入门Python呢?这里整理了一些个人经验和Python入门教程供大家参考. 什么是算法 ...

  7. java第一周_从计算机基础到流程控制语句(if_else)

    一.计算机基础 裸机 没有安装任何软件的计算机(无操作系统.无应用软件) 计算机的应用 1.科学计算 科学计算也称数值计算.计算机最开始是为解决科学研究和工程设计中遇到的大量数学问题的数值计算而研制的 ...

  8. c if语句多个条件判断顺序_Java中的流程控制语句 (基础篇四)

    流程控制就是对事物次序的布置和安排,在程序中就是对代码执行次序的安排和控制 程序中的流程控制主要有三种:顺序流程.选择流程.循环流程. 顺序流程:比如打印输出的代码按照指定的顺序结构依次排序,打印的结 ...

  9. python平稳性检验_时间序列预测基础教程系列(14)_如何判断时间序列数据是否是平稳的(Python)...

    时间序列预测基础教程系列(14)_如何判断时间序列数据是否是平稳的(Python) 发布时间:2019-01-10 00:02, 浏览次数:620 , 标签: Python 导读: 本文介绍了数据平稳 ...

最新文章

  1. android 稳定性测试工具,APP 稳定性测试工具-Fastbot_Android详解
  2. 题目1164:旋转矩阵
  3. Apache+Openssl
  4. [Eclipse的Maven项目搭建,仅为测试Maven功能]如何在Eclipse下搭建Maven项目
  5. mysql数据库试题下载_MYSQL数据库2013-2014学年考试试卷
  6. 鲜为人知的DC-DC外围电感选型方法
  7. boost::mp11::mp_is_set相关用法的测试程序
  8. 容器源码分析之PriorityQueue(十)
  9. 遗传所屠强研究组开发Decode-seq方法显著提高差异表达基因分析的准确性
  10. Leetcode:11.container-with-most-water(盛水最多的容器)
  11. 分析“HTTP500内部服务器错误”解决方法
  12. YII学习笔记6.20日
  13. 华为数通考试正式改版,改版前后有什么区别?
  14. MacOS Mojave的安装
  15. 蓝桥杯练习 圆的面积
  16. 红杉资本合伙人Maguire:Crypto将是未来30年最大趋势 |链捕手
  17. Unity内动态影子的各种做法
  18. Microsoft Defender SmartScreen 阻止了无法识别的应用启动,Windows已阻止此软件和无法验证发布者两个问题的解决方法(以腾讯云服务器为例的三种保姆级图文解决方法)
  19. python: xlsx表格转为csv文件
  20. 计算机从bios到操作系统,高手进!!计算机开机后在进入操作系统前BIOS在进行什么检测工作?...

热门文章

  1. htmlspecialchars() 函数过滤XSS的问题
  2. rocksdb ubuntu c++源码编译测试
  3. 设计模式 之 建造者
  4. Leetcode | Implement strStr()
  5. windows phone 学习(4)
  6. 开发 Windows 8 Bing地图应用(2)
  7. WebService生成客户端代理的工具WSDL参数介绍
  8. 华为智能手环智能手表软件测试,一块智能手表的测试之旅,揭秘华为运动健康科学实验室...
  9. 1582年日历怎么了_【知乎周边】知乎2020年日历开箱+测评
  10. python逐个读取字符_玩转python之字符串逐个字符或逐词反转