第6课-分支语句

37次阅读

共计 1474 个字符,预计需要花费 4 分钟才能阅读完成。

if 语句分析
·if 语句用于根据条件选择执行语句
·else 不能独立存在且总是与它最近的 if 相匹配不能
·else 语句后可以接连其他 if 语句

·if 语句中零值比较的注意点
-bool 型(bool 为布尔型, 只有一个字节),取值 false 和 true 变量应该出现于条件中,不要进行比较
- 变量和 0 值比较时,0 值应该出现在比较符号左边
-float 型变量不能直接进行 0 值比较,需要定义精度

switch 语句分析
·switch 语句对应单个条件多个分支的情形
·case 语句分支必须要有 break,否则会导致分支重叠
·default 语句有必要加上,以处理特殊情况(当所有的 case 都不执行的时候,执行 default 语句,不要用 default 处理正常的程序逻辑)

·case 语句中的值只能是整型或字符型(绝对不能用 1.1,1.2,2.3 等浮点型)
·case 语句的排列顺序
- 按字母或数字排序各条语句
- 正常情况放在前面,异常情况放在后面
-default 语句只用于处理真正的默认情况

例子 6 -1:

include “stdio.h”

void f1(int i)
{

if (i < 6)
{printf("Failed!\n");
}
else if ((6 <= i) && (i <= 8))
{printf("Good!\n");
}
else
{printf("Perfect!\n");
}

}
void f2(char i)
{

switch (i)
{
case 'c':
    printf("Compile!\n");
    break;

case 'd':
    printf("Debug!\n");
    break;

case  'o':
    printf("object!\n");
    break;

case  'r':
    printf("Run!\n");
    break;

default:
    printf("Unknown!\n");
    break;
}

}
int main()
{

f1(5);
f1(9);
f1(7);

f2('c');
f2('o');
f2('d');
f2('e');
return 0;

}
输出结果:
Failed!
Perfect!
Good!
Compile!
object!
Debug!
Unknown!

例子 6 -2:

include “stdio.h”

void f1(int i)
{

switch (i < 6)
{
    case 1:
        printf("Failed!\n");
        break;
    default:
        switch ((6 <= i) && (i <= 8) )
        {
            case 1:    
                printf("Good!\n");
                break;
            default:
                printf("Perfect!\n");
                break;    
        }
        break;
}

}
void f2(char i)
{

if ('c' == i)
    printf("Compile!\n");
else if('d' == i)
    printf("Debug!\n");
else if ('o' == i) 
    printf("object!\n");
else if ('r' == i)
    printf("Run!\n");
else
    printf("Unknown!\n");

}
int main()
{

f1(5);
f1(9);
f1(7);

f2('c');
f2('o');
f2('d');
f2('e');
return 0;

}
输出结果:
Failed!
Perfect!
Good!
Compile!
object!
Debug!
Unknown!

小结:
·if 语句用于复杂逻辑进行判断的情形中
·switch 语句适用于对离散型值进行判断的情形中
·if 语句和 switch 语句在功能上可以相互替换
·if 语句对于“按片”分支判断的情形更加简洁
·switch 语句对于多分支判断的情形更加简洁

狄泰软件学院课程学习

正文完
 0