c++学习笔记03 程序流程结构

简介: C++学习笔记,主要介绍了程序流程结构,包括顺序结构、选择结构和循环结构。选择结构中详细解释了if语句、三目运算符和switch语句的用法和注意事项。循环结构部分则涵盖了while循环、do-while循环和for循环的语法和使用技巧。此外,还介绍了跳转语句,包括break、continue和goto语句的用途和用法。

程序流程结构

分类:
顺序结构,选择结构,循环结构

选择结构

注意:break和continue不可以用于退出if条件判断

if语句

单行if语句

if(判断条件)
{
执行语句
}

if (score >= 600) {
   
        cout << "your score is" << score<<endl;
        cout << "PASS";
    }

多行if语句

if(判断条件)
{
要执行的语句
}
else
{
要执行的语句
}

if (score >= 600) {
   
    cout << "your score is" << score << endl;
    cout << "PASS 600";
}
else {
   
    cout << "NOT PASS 600 ";
}

多条件if语句
if(判断条件)
{
要执行的语句
}
else if(判断的其他条件)
{
要执行的语句
}
else
{
要执行的语句
}
注释:else为除了if和else if 剩下的情况

if (score >= 600) {
   
    cout << "your score is" << score << endl;
    cout << "PASS 600";
}

else if((600>=score)&&(score>=500)){
   
    cout << "PASS 500 Not PASS 600";
} 
else {
   
    cout << "not pass 500";
}

注意:if后面不得加;,否则直接执行后面片段而不经过判断
两个判定条件不能连续大于小于,否则不生效,需要用逻辑运算符分开

三目运算符

(表达式1?表达式2:表达式3)

c=(a>b?a:b)

表达式1为真→执行表达式2并返回表达式2结果
表达式1为假→执行表达式3并返回表达式3结果

三目运算符返回的如果是变量,可以继续赋值
(a>b?a:b)=100;
三目运算符可以用来代替简单的if语句
例子如下:

    //找出数组中最大的元素
int array[5] = {
    300,350,200,400,250 };
int max = 0;
for (int i = 0; i < 5; i++)
{
   
    if (array[i] > max)
    {
   
        max = array[i];
    }

    //三目运算符的做法
    //max = (array[i] > max ? array[i] : max);
}
cout << max;
switch语句
switch(变量名)
{
   
case 变量值情况1:
    执行语句1
    执行语句2
    执行语句3
    break;
case 变量值情况2:
    执行语句1
    break;
default:
    非以上case的默认情况下要执行的语句
    break;

}

变量可以是常量(如int类型)也可以是char类型和bool类型,但不能是string类型
当变量为bool类型时,输入的非0数均会被转化为1

如果有部分case的处理方式相同时,将他们放在一起,使用如下方法

case 3:
case 2:
    cout << "你选择的难度是中等"  << endl;
    break;

如果switch语句中不加break,将会执行下方所有的switch,因此switch的每个case下都要加break
swich语句的case中如果有多条语句不需要加{},switch将会执行该case下的所有语句然后break
当语句过多时将会报错,此时再加{}来包住语句块即可
break和continue不可以用于退出if条件判断
如果不加default,输出不符合case各个情况值时会跳过switch语句块

总结:

1.if可以判断一个区间,而switch只能判断整型或者字符型
2.switch要写break
2.switch执行效率高,结构清晰

循环结构

while循环
while(循环条件)
{
   
}

当条件为1(真)时,循环为死循环,会不断执行,需要有相关的退出循环的代码

break可以用于退出当前循环
变形:do-while循环

do
{
   
循环语句
}
while(循环条件);

注意:这里的whlie后面需要加分号;
总结:
do-while先执行一遍再判断循环条件
while先判断是否符合循环条件再执行循环条件

for循环结构

for(起始表达式;条件表达式;末尾循环体)
{
   
循环语句
}

首先是执行起始条件,如果符合条件表达式,则执行循环内容,然后执行末尾循环体

注意:起始表达式中定义的变量仅在该循环里存在

for(A;B;C)的ABC任意一项都可以没有,而在其他地方对循环作限制,如下:

int i = 1;
for (;;) {
    //对for进行拆分,仍可以执行
    if (i > 10)
        break;
    cout << i<<endl;
    i++;
}

注意:for循环只会执行第一个语句,如不包含{},后续语句将在循环外依次执行

嵌套循环

嵌套循环不使用同一个循环起始表达式生成的变量i,当使用同一个变量名 “i”时,会按就近原则取值
但一般不命名为相同的变量名

跳转语句

break语句

1.switch中用于终止case并跳出switch
2.出现在循环语句中,用于跳出当前循环
3.出现在嵌套循环中用于跳出最近的内层循环语句

continue语句

类似break,但不同,循环中使用continue,执行到本行就不再执行,而执行下一次循环

goto语句

goto FLAG;//开始跳转
FLAG:  //跳转点位置

注意跳转点位置加:冒号
不太推荐多次使用,容易混淆

目录
相关文章
|
16天前
|
C++
C++ 根据程序运行的时间和cpu频率来计算在另外的cpu上运行所花的时间
C++ 根据程序运行的时间和cpu频率来计算在另外的cpu上运行所花的时间
29 0
|
25天前
|
C++
c++学习笔记07 结构体
C++结构体的详细学习笔记07,涵盖了结构体的定义、使用、数组、指针、嵌套、与函数的交互以及在结构体中使用const的示例和解释。
31 0
|
11天前
|
安全 C语言 C++
C++学习笔记
C++学习笔记
|
24天前
|
C++
【学习笔记】【C/C++】 c++字面值常量
【学习笔记】【C/C++】 c++字面值常量
26 1
|
16天前
|
PHP C++ Python
右手坐标系,空间点绕轴旋转公式&程序(Python和C++程序)
右手坐标系,空间点绕轴旋转公式&程序(Python和C++程序)
16 0
|
24天前
|
编译器 C++
【C/C++学习笔记】C++声明与定义以及头文件与源文件的用途
【C/C++学习笔记】C++声明与定义以及头文件与源文件的用途
28 0
|
24天前
|
存储 C++
【C/C++学习笔记】string 类型的输入操作符和 getline 函数分别如何处理空白字符
【C/C++学习笔记】string 类型的输入操作符和 getline 函数分别如何处理空白字符
29 0
|
25天前
|
C++
c++学习笔记09 引用
C++引用的详细学习笔记,解释了引用的概念、语法、使用注意事项以及引用与变量的关系。
38 0
|
25天前
|
存储 程序员 编译器
c++学习笔记08 内存分区、new和delete的用法
C++内存管理的学习笔记08,介绍了内存分区的概念,包括代码区、全局区、堆区和栈区,以及如何在堆区使用`new`和`delete`进行内存分配和释放。
37 0
|
25天前
|
存储 C++
c++学习笔记06 指针
C++指针的详细学习笔记06,涵盖了指针的定义、使用、内存占用、空指针和野指针的概念,以及指针与数组、函数的关系和使用技巧。
29 0