C语言:分支和循环

本文详细介绍了C语言中的分支结构(if,if...else,嵌套if,switch)以及循环结构(for,while,do-while)的语法、逻辑流程图和注意事项,包括循环嵌套、流程转移控制(break,continue,goto)等内容,适用于编程学习者参考。

目录

摘要

前言

分支

 if 语句

一、if...

一般语法形式

逻辑流程图

二、if...else...

一般语法形式

逻辑流程图

三、注意与说明

四、嵌套if

一般语法形式

逻辑流程图

五、悬空else问题

规则

解决方法

switch 语句

一、注意与说明

二、一般语法形式

三、逻辑流程图

循环

for 语句

一、注意与说明

二、一般语法形式

三、逻辑流程图

while 语句

一、注意与说明

二、一般语法形式

三、逻辑流程图

do-while 语句

一、注意与说明

二、一般语法形式

三、逻辑流程图

循环的嵌套

流程的转移控制

goto语句

break语句

contiune语句

for循环中的break和continue

一、注意与说明

二、逻辑流程图

while循环中的break和continue

一、注意与说明

二、逻辑流程图

do while循环中的break和continue

一、注意与说明

二、逻辑流程图


摘要

语言:C语言

内容:分支和循环的基本语法形式、逻辑流程、注意与说明

说明:本文无例子、文章倾向于笔记

前言

众所周知,逻辑结构由三部分构成:顺序结构、选择结构、循环结构。

在C语言中,后两者分别对应分支、循环。

分支

 if 语句

一、if...

一般语法形式
if ( 表达式 ) 
        语句;
逻辑流程图

二、if...else...

一般语法形式
if ( 表达式 )
    语句1;
else
    语句2;
逻辑流程图

三、注意与说明

每个 if 和 else 语句后只能控制⼀条语句,多个语句必须使用 { }进行分隔

建议:无论多少语句都统一使用 { } ,养成习惯

四、嵌套if

一般语法形式
if ( 表达式1 )
    语句1;
else if ( 表达式2 )
    语句2;

......

else if ( 表达式n )
    语句n;
else
    语句n+1;

说明

表达式为if...else...或if...

逻辑流程图

五、悬空else问题

规则
else 总是跟最接近的一个 if 匹配结合为一个if...else...语句
解决方法
使用 { } ,按逻辑需求进行分隔。

switch 语句

一、注意与说明

  1. switch 语句是⼀种特殊形式(形式不同,逻辑相同)的 嵌套if 结构;作用:简化代码,使逻辑直观清晰。
  2. switch 后的表达式必须是整型表达式;case 后的值必须是整形常量表达式。
  3. case 和后边的值之间必须要有空格。
  4. case 语句和 default 语句是没有顺序要求的,通常是把 default 语句放在最后。
  5. 如果要实现真正的分支效果,每⼀个 case 语句后,应当加上 break 语句。
    原因:只有在 switch 语句中使用  break , 才能跳出 switch 语句,如果某⼀个 case 语句的后边没有  break 语句,代码会继续玩下执⾏,有可能执⾏其他 case 语句中的代码,直到遇到 break 语句或者 switch 语句结束。
  6. break 也不是每个 case 语句都得有,应当根据实际情况来决定某个 case 语句后 break 的有无。

二、一般语法形式

switch(表达式)
{
case 值1:
        语句1;
        break;
case 值2:
        语句2;
        break;

......

case 值n:
        语句n;
        break;
default:
        语句n+1;
        break;
}

三、逻辑流程图

循环

for 语句

一、注意与说明

  1. for 语句是三种循环语句中最常用的语句。
    原因:for 循环的初始化、判断、调整三个部分比 while 循环(do while循环)更集中,便于代码的维护。
  2. 表达式1:用于循环变量的初始化
    表达式2:用于循环结束条件的判断
    表达式3:用于循环变量的调整
  3. 先判断后执行

二、一般语法形式

for(表达式1; 表达式2; 表达式3)
        语句;//多个语句用{ }

三、逻辑流程图

while 语句

一、注意与说明

  1. 先判断后执行

二、一般语法形式

while(表达式)
    语句;//多个语句用{ }

三、逻辑流程图

do-while 语句

一、注意与说明

  1. 循环语句在 do-while 语句中循环体是至少执行⼀次的,这是 do while 循环⽐较特殊的地⽅。
  2. 先执行(一次)再判断

二、一般语法形式

do
{

    语句;

}while(表达式)

三、逻辑流程图

循环的嵌套

三种循环语句都可以进行嵌套,以解决更复杂的问题。

嵌套的使用可以参照本文“ 分支-if语句-嵌套if ”

流程的转移控制

goto语句

goto的作用是同⼀个函数内直接使程序跳转到 该语句标号所标识的语句。

一般语法形式:

        goto 语句标号;
        ......
语句标号:......
语句标号:......
        ......
        goto 语句标号;

break语句

break 的作⽤是⽤于永久的终⽌循环,只要 break 被执行,直接就会跳出 包含break语句的循环(只能跳出一层循环),继续往后执行。

contiune语句

continue 的作用是跳过本次循环 continue 后边的代码,在 for 循环和 while 循环(do while循环)中有所差异的。

for循环中的break和continue

一、注意与说明

在 for 循环中 continue 的作用是跳过本次循环中 continue 后的代码,直接去到循环的调整部分

二、逻辑流程图

while循环中的break和continue

一、注意与说明

在 while 循环中 continue 可以帮助我们跳过某⼀次循环 continue 后边的代码,直接到循环的判断部分,进⾏下⼀次循环的判断;如果循环的调整是在 continue 后边的话,可能会造成死循环。

二、逻辑流程图

do while循环中的break和continue

一、注意与说明

dowhile 语句中的 break continue 的作⽤和 while 循环中⼏乎⼀模⼀样

二、逻辑流程图

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陈是我的姓

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值