强化C【C语言笔记】——循环控制

c

C语言提供了多种循环语句,可以组成各种不同形式的循环结构:

  • 使用goto语句和if语句构成循环

  • while语句

  • do-while语句

  • for语句

goto语句以及goto语句构成循环

goto语句是一种无条件转移语句。

使用格式为:goto 语句标号;

其中语句标号是一个有效的标识符,在要跳转到位置前加上“语句标号:”,执行goto语句后,程序会跳转到该标号处并执行其后的语句。

标号必须与goto语句同处于一个函数中;通常goto与if条件语句连用,当满足某一条件,则跳转到标号处运行

while语句

一般形式为:while(表达式) 语句

语义是,计算表达式中的中,如果为真,则执行循环体语句

do-while语句

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

do{

语句

}while;

与while不同在于,它执行循环中的语句,然后再判断表达式是否为真,为真则继续循环;为假则终止循环。

do-while至少要执行一次循环体

for语言

一般形式为:for(表达式1; 表达式2; 表达式3) 语句

执行过程:

  • 先求解表达式1

  • 求解表达式2,若值为真,则执行for语言中指定的内嵌语句,若为假则结束循环

  • 执行完内嵌语句之后,进行求解表达式3

for循环最简单的应用形式:

for(循环变量赋初值; 循环条件; 循环变量增量) 语句

  • 循环变量赋初值是一个赋值语句,用于给控制循环的变量赋初值

  • 循环条件是一个关系表达式,决定了什么时候退出

  • 循环变量增量:定义循环每次执行后循环变量发生什么变化

使用for循环时注意:

  • for循环中的表达式1、2、3都是可以省略的,但是之间的“;”不可以省略
    • 省略了循环变量赋初值,表示不对循环控制变量进行初始的赋值

    • 省略了循环条件,则无其他处理变为死循环

    • 省略循环变量增量,则不对循环控制变量进行操作;也可以将对循环变量修改的语句放在循环语句中

    • for其中的循环变量初始赋值语句和循环变量增量语句,除了可以是简单的语句,也可以是",语句"

break和continue语句

break语句

break同在出现在循环语句和开关语句(switch)中

当用于switch中,可使程序跳出switch尔跳过switch后面的语句;如果没有break,则将继续执行case满足的条件的执行语句的后面的语句

当用于while、do-while、for的时候,可使程序钟旨当前循环(跳出当前循环),一般与if共同使用,当满足if条件的时候则跳出当前循环

  • 在循环嵌套中,一个break只向外跳出一层循环,跳出最近的一层循环

  • break在if分支语句中不起作用

continue语句

continue语句的作用是跳过本次循环,而强制执行下一次循环;continue只用于循环结构中,与if共同使用,当满足if表达式的条件的时候,则跳出当前循环,不在执行后面的语句,强制从头开始

相关文章

【数据结构】——哈夫曼树

速通回忆 这里是完整的代码和运行结果,可以直接选择看下面代码的思路去快速回忆哈夫曼树,或从下面理论部分开始学习 ``` #include "stdio.h" #include "stdlib.h" /* 哈夫曼树结点的结构体 */ typedef struct { int weight; /* 权重 */ int parent; /* 父母结点下标 */ int l...

c

强化C【C语言笔记】——位运算

位运算符C语言提供了六种位运算符 - &:按位与 - !:按位或 - ^:异或 - ~:取反 - <<:左移 - \>>:右移 按位与运算 **其功能是参与运算的两数各对应的二进位相与。只有对应的两个二进位均为1时,结果位才为1,否则为0** 按位与运算通常用来对某些位清0 按位或运算 **其功能是参与运算的两数各对应的二进位相或。只要对应的二个二进位有一个为1时,结果位就...

c

C语言中规中矩的大树

**没事干,写个树玩玩,真正的“撸树”** 在Ubuntu终端、VScode终端显示 代码 ``` #include "stdio.h" int main(){ int high = 5; //层高 int count = 5; //层数 int start; //每层开始*数 int...

c