C语言笔记(4)-程序结构和控制语句

四、程序结构和控制语句

  1. C语言汇总程序结构的分类

    • 顺序结构
    • 分支结构
    • 循环结构
  2. C控制语句

    条件判断语句

    • if语句

      1.if(表达式) 语句2

      ​ 若表达式的值非0,则代表真,执行语句2;表达式的值为0的话,则代表假,不执行语句2。

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

      ​ 这是一种双分支结构,若判断表达式为真,则执行语句1否则执行语句2。

      注意:语句必须以;结尾

      3.if(表达式1) 语句1

      else if(表达式2) 语句2

      else if(表达式3) 语句3

      else if(表达式4) 语句4

      ....

      else if(表达式n) 语句n

    • if语句的嵌套使用

      嵌套:

      if()
      {
          if() 语句1;
          else 语句2;
      }
      else
      {
          if() 语句3
          else 语句4
      }
      

      注意:复合语句后面不需要加;

    • switch语句

      switch(表达式)
      {
          case 常量表达式1:语句序列1;
          case 常量表达式2:语句序列2;
          case 常量表达式3:语句序列3;
              ...
          case 常量表达式n:语句序列n;
          default:语句n+1;
      }
      
      • switch后面的表达式必须为整型值或字符型值。
      • 这里的case标签并没有将语句列表划分为几个部分,他只是确定了语句执行的入口点
      • switch的执行过程为:首先计算表达式的值,然后跳到case标签值与表达式值相等的地方开始往下执行,如果没有跳转指令(break)的话会一直执行到switch语句的最后。
      • 如果需要程序在执行完入库点的语句序列后直接跳出switch语句,就需要在语句序列后加上break语句。
      • default分支看似特殊,其实和普通标号一样,如果放在中间且没有加break,就会一直执行,直到看到break。

    循环语句

    • while

      while(表达式)
      {
          循环体语句;
      }
      

      在执行while循环语句时,先判断表达式的值,再执行循环体中的内容

    • do-while

      do
      {
          循环体语句;
      }while(表达式);
      

      在执行do-while循环语句时,先执行循环体的内容,再判断while表达式中的值。

      勿忘while括号后面的";"

    • for循环语句

      for(表达式1;表达式2;表达式3)
      {
          循环体语句;
      }
      
      • 先执行表达式1,在判断表达式2;执行循环体语句;执性表达式3;判断表达式2;执行语句…
      • 表达式1:常用于给循环变量赋初值,一般是赋值表达式。可省略,即在外部给表达式赋初值。
      • 表达式2:通常是循环条件
      • 表达式3:通常用来改变循环变量的值。
      • for括号中的三个表达式都可以是逗号表达式,即每个表达式可有多个表达式组成,3个表达式都是任选项
      • 三个语句都可以省略,但是;不能省略
      • 如;for(;;)则变成死循环。循环体可以为空语句。
      • for可与while,do-while相互嵌套
    • goto 语句

      goto语句也称为无条件转移语句;

      goto 语句标号;
      ...
      语句标号:
      语句体;
      
      • 语句标号去表示语句的作用,放在某一行的前面,括号后面加(?。
      • goto语句的语义是执行语句标号所标识的语句。可以与条件判断语句配合使用,来构成循环。
      • goto语句常用于跳出多层循环,出错是调回出错处理的地方。
      • 程序中过多使用goto语句,很容易造成程序混乱。

    转向语句分析:

    • break

      break语句在前面的switch语句中已经出现过,只能在switch语句中或循环体中。

      其作用是跳出本层循环去执行后面的语句

    • continue

      continue只能用在循环体中

      其功能是结束本次循环,转入下一次循环条件的判断与执行

    • goto

      goto语句也叫无条件转移语句,用于改编程序的流向。

      除了用来构造循环体外还能用来实现条件转移和跳出循环体的功能

发布了49 篇原创文章 · 获赞 15 · 访问量 9291

猜你喜欢

转载自blog.csdn.net/wit_732/article/details/97616738