流程控制_选择 笔记

选择

1.定义

有些代码执行,也可能代码不执行​,有选择地执行某些代码

2.分类

if

switch

选择_if

1.if最简单的用法

   if  (表达式)

扫描二维码关注公众号,回复: 6385780 查看本文章

         语句;

功能:   如果表达式为真,则执行语句;否则不执行

2.if的范围(重点)

if默认的只能控制一条语句的执行,如果想执行多条语句,需用大括号括起来

②控制多条语句的格式

    if  (表达式)

   {

             语句A;

             语句B;

   }

3. ifelse…的用法

①格式

   if  (表达式)

           语句A;

   else

           语句B;

②注意,else默认也只能控制一个语句(执行多条语句的方法和if一样),且语句A和语句B不能同时执行

4. ifelseifelse的用法

①格式

  if(表达式)

          语句A;

  else if(表达式)

          语句B;

  else

          语句C;

注意:

①如何控制多条语句的执行同if一样

elseif的数量可增加

③语句A,B,C只能执行其中一条

5.C语言对于真假的判断

非零是真

零即是假

真用1表示

假用0表示

6.程序

①注意: 表达式不可写成"a<x<b"的形式,应写成"x>a&&x<b"的形式

 if常见问题解析

1.空语句的问题

    if  (3>2);

等价于

    if  (3>2)

     ;     //这是一个空语句

所以一般情况下if的表达式后面不能加";"

选择_switch

1.格式

switch(表达式)

{

   case  常量表达式A

        语句1;

   break;

   case  常量表达式B;

         语句2;

   break;

   default:

         语句N;

}

2.用法

①break表示退出。例如若语句1后没有break,则也要执行语句2。即从开始执行到break结束。

②default可以出现在任何位置,也可以没有,但建议写在末尾,表示除去case匹配的其他情况。

有些书籍中也把switch当做选择结构

注意:case标签必须是常量表达式(constant Expression) 只能针对基本数据类型使用switch,这些类型包括intchar等。对于其他类型,则必须使用if语句。

(补充)常量表达式(const experssion):是指(1)值不会改变 并且 (2)在编译过程就能得到计算结果的表达式。字面量属于常量表达式,用常量表达式初始化的const对象也是常量表达式。

一个对象(或表达式)是不是常量表达式由它的数据类型和初始值共同决定。

例子:

const int a =1; //常量表达式

cosnt int b=a+1; //常量表达式

int c=2; //初始值是字面值常量,当c数据类型是普通int

const int d=fun(); //fun()值要在运行时得到,d不是字面值常量

3.举例

switch(1+1)

{

    case 1:

    printf("1\n");

    break;

    case 2:

    printf("2\n");

    printf("...");

    break;

    default:

    printf("。。。");

}

输出结果:

2

...

猜你喜欢

转载自www.cnblogs.com/qinenxi/p/10994939.html
今日推荐