C语言基础之流程控制

目录

一、选择结构

1.if  语句

(1)单分支 --- 处理单个情况

(2)双分支 --- 处理两种情况

(3)多分支 --- 处理多种情况

补充:条件运算

2.switch语句

二、循环结构

1.goto语句

2.while语句

3.do while语句

4.for循环

补充:break 和 continue

                                   


任何一个程序都是有顺序结构选择结构循环结构这三种结构组合而成

C语言通过关系运算和逻辑运算来构造选择判断的条件。

关系运算符:

关系表达式的结果在C语言中用int型来记录,用非0和0来表示真和假

注意 : 0<a<5 ---((0 < a )< 5)//与数学上的运算有所不同

逻辑运算符:&&(与)   || (或)     !(非)

&&:一假则假 --- 短路特性
||  :一真则真 ---短路特性
!:真假相对

一、选择结构

1.if  语句

(1)单分支 --- 处理单个情况

语法形式:
   if (表达式)  ---- 后面没有分号!
   {
      语句      //复合语句
   }  

语义:如果,表达式 为真 则 执行 语句, 表达式 为假   表示if语句结束。

流程图:

(2)双分支 --- 处理两种情况

语法形式:

if (表达式)
   {
         语句1
   }
   else
   {   
     语句2
   }
语义:如果 ,表达式为真  执行 语句1,表达式为假,执行 语句2


          流程图:

(3)多分支 --- 处理多种情况

语法:

if (表达式1) 
     {
        语句1;
     }else if (表达式2)  
     {
        语句2;
     }else if ... 
     ....
     {
     }else 
     {
       
     }

语义:判断表达式1,若为真,执行语句1,若为假,则继续往下判断表达式2,依次类推

流程图:

补充:条件运算

语法:表达式1 ? 表达式2 :表达式3

含义:判断表达式1,若为真,执行表达式2;若为假,执行表达式3

2.switch语句

语法:

switch (表达式)   // 表达式是一个 值 
   {
       case 常量表达式1:  
          语句1
          break;
       case 常量表达式2:
          语句2
          break;
       case 常量表达式n:
          语句n
          break;
       default
          语句n+1     
   }

语义:求解 表达式 ,用表达式结果 ,与 下面case 后的常量表达式的结果 进行匹配 
   若匹配成功,则执行对应case下的语句,直到遇到了break 或者是 遇到了 switch 语句 '}' (右花括号)则结束。

举例流程图:

注意:switch后面的表达式,必须是一个整型表达式,浮点型不行,也不能是变量。
           default可以不放在最后面,但是此时后面需要加上break;否则程序将不会对case进行匹                 配,而继续执行case中的语句。

二、循环结构

1.goto语句

goto语句实际上并不是循环,而是起到一个跳转的作用。

语法:goto 标签   //  在想要跳转的地方放一个标签,遇到goto,就能跳转,但是一般不怎么使用。

2.while语句

构成循环的要素:
(1)循环体  //反复被执行的代码 
(2)结束条件 
(3)使循环趋于结束的操作(或语句)
(4)循环的初始条件

语法:

while 语句

语法:
while (表达式)    //注意后面没有分号
{
  语句(循环体)
}

语义:判断表达式,若为真,执行语句 ;语句执行玩之后,继续判断表达式,重复上面的操作,直到表达式为假;若为假,while 结束,程序继续往下。

流程图:

3.do while语句

语法:

do
    { 
        语句;
    }while (表达式);    //注意这里有分号

语义:先执行语句,然后判断表达式。若为真,继续执行语句,然后判断,重复这个过程,直到 表达式为假,do-while 语句结束;若为假,则do-while 结束,程序继续往下。

流程图:

对比while 和do - while :while先判断后执行,do-while先执行后判断,因此do-while里面的循环至  少会被执行一次。

4.for循环

语法:

for (表达式1;表达式2;表达式3)
{
   循环体语句;
}

注意:for语句后面没有分号。

语义:s1 求解 表达式1,
           s2 判断 表达式2,
           s3 真, 则 执行 循环体语句 执行完之后,
   s4 求解 表达式3
        求解完之后,继续判断表达式2 
        重复 s2 到 s4 
   直到 s2 判断为假,for循环结束


根据循环的四要素,可以归纳出以下语义:

for (初始条件 ;循环条件(循环结束条件);使循环趋于结束语句) 
{
   循环体语句;
}

注意:for 循环的三个表达式都可以省略,但是对应的循环要素不能省;   
     若表达式2省略 ,表示循环条件永远为真 。
 

流程图:

选用:
   1.for //多用于 有一定范围 
     while 
     do-while //多用于 只有某个结束条件的 

补充:break 和 continue

(1)break  语句 :
break 可以用在 switch ,循环 while , do-while ,for 
作用: 用在循环中 ,表示跳出 本层循环。             


(2)continue 语句
    只用在循环中
作用:结束本次循环,继续下一次循环。  

   


          
          

      
        

  • 21
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值