基本控制结构2

顺序结构

程序按照语句的书写次序顺序执行。

选择结构

判断选择结构又称条件分支结构,是一种基本的程序结构类型。

在程序设计中,当需要进行选择、判断和处理的时候,就要用到条件分支结构。

条件分支结构的语句一般包括if语句、if--else语句、switch--case语句。

if语句在二选一的条件下,Switch则是在多选一的条件下。都是对条件表达式进行判断,针对不同结果,决定要执行的语句。

switch语句(多分支)

switch(表达式){

case 常量表达式1: 语句组1; break;

......

case 常量表达式n: 语句组n; break;

default: 语句组n+1;

}

switch语句的执行过程:

①先求出表达式的值;

②将表达式的值依次与case后面的常量表达式值相比较,若与某一常量表达式的值相等,则转去执行该case语句后边的语句序列,直到遇到break语句或switch语句的右花括号为止。

③若表达式的值与case语句后的任一常量表达式的值都不相等,如果有default语句,则执行其后边的语句序列。如果没有default语句,则什么也不执行。

循环结构

C++提供了3种循环语句:for语句、while语句和do-whi1e语句。

在循环语句中,重复执行的操作叫做循环体。

循环体可以是单条语句、块语句甚至是空语句。

while循环

while循环有两种循环控制语句实现,while语句和do...while语句。

while语句

格式: while(条件表达式) 语句

while语句执行过程为:

先计算条件表达式,如果该表达式的值为非零,则执行循环体的语句;

否则退出循环,不执行循环体,而执行该循环语句后面的语句。

也就是说,当循环条件为真时反复执行循环体。因此,while循环也被叫做"当"型循环。

do while 语句

格式:do 语句 while(条件表达式);

do...while语句执行过程为:

先执行循环体后判断条件表达式的值,若表达式的值为真则反复地执行循环体,直到表达式的值为假才退出循环。

因此,do...while语句也被叫做"直到"型循环。

区别:在一定条件下,while循环可能一次都不执行,而do...while循环在任何条件下都至少要执行一次。

for循环

格式:for(表达式1;表达式2;表达式3) 语句

就是:for( 循环变量赋初值;循环条件;循环变量增值) 循环体

for是关键字,语句为循环体,它可以是一条语句,也可以是复合语句,还可以是空语句。

for循环语句的执行过程:

① 计算表达式1的值。

② 计算表达式2的值,并进行判断,如果表达式2的值为0(false)则退出该循环,执该循环体后面的语句; 如果表达式2的值为非0(true)转(3) 。

③ 执行循环体的语句。

④ 计算表达式3的值。

⑤ 转 ②

跳转语句

提供:三个转移语句:break语句、continue语句和goto语句。

主要用于改变程序中语句的执行顺序,使程序从某一语句有目的地转移到另一语句继续执行。

break语句

break语句的功能是:中断所在循环体或switch...case语句块,跳转本层循环体外。

我们希望一个程序从中间某个地方停止运行,就需要使用循环控制语句break,break语句只能跳出直接包含它的for循环。

例如,输出100到999之间第一个15的倍数?

cpp 复制代码
#include<iostream>
using namespace std;
int main(){
    int i;
    for(i = 100; i <= 999; i ++){
        if( i % 15 == 0){
            break;
        }
    }
    cout << i << endl;
    return 0;
}

continue语句

continue语句的作用是跳过本次循环的其它语句,直接进入下一次循环。

continue语句只能用在循环语句的循环体内。在循环执行的过程中,如果遇到continue语句,程序将结束本次循环,接着开始下一次的循环。

例如:

cpp 复制代码
#include<iostream> 
using namespace std; 
int main(){ 
    int i; 
    for(i = 100; i <= 110; i ++){ 
        if( i % 17 == 0){ 
            continue; 
        } 
        cout << i << endl; 
    } 
    return 0; 
}

goto语句

格式: goto 语句标号;

程序跳到语句标号位置继续执行。语句标号属于标识符,格式:语句标号: 语句

其中的语句可以是任意语句,如:{、 while()、 for()...等。

goto语句的使用限制在一个函数体内,即goto语句只能在一个函数范围内进行语句转移。在同一函数中,语句标号应该是唯一的。

相关推荐
杜子不疼.8 小时前
【C++ AI 大模型接入 SDK】 - DeepSeek 模型接入(上)
开发语言·c++·chatgpt
石山代码9 小时前
C++ 内存分区 堆区
java·开发语言·c++
张小姐的猫11 小时前
【Linux】多线程 —— 线程互斥
linux·运维·服务器·c++
做人求其滴13 小时前
面试经典 150 题 380 274
c++·算法·面试·职场和发展·力扣
见叶之秋13 小时前
C++基础入门指南
开发语言·c++
计算机安禾14 小时前
【c++面向对象编程】第42篇:模板特化与偏特化:为特定类型定制实现
开发语言·c++·算法
玖釉-14 小时前
C++ 中的循环语句详解:while、do...while、for、嵌套循环与循环控制
开发语言·c++·算法
欧米欧15 小时前
C++进阶数据结构之搜索二叉树
开发语言·数据结构·c++
青小莫15 小时前
C++之vector讲解
c++·stl
计算机安禾16 小时前
【c++面向对象编程】第41篇:函数模板与类模板:泛型编程的基石
开发语言·c++·算法