第6课 - 分支语句
Posted kojull
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第6课 - 分支语句相关的知识,希望对你有一定的参考价值。
if语句分析
·if语句用于根据条件选择执行语句
·else不能独立存在且总是与它最近的if相匹配
·else语句后可以连接其它if语句
if( condition )
{
//statement 1
}
else
{
//statement 2
}
if语句中零值比较的注意点
bool型变量应该直接出现于条件中,不要进行比较;
变量和0比较时,0值应该出现在比较符号的左边;
float型变量不能直接进行0值比较,需要定义精度。
switch语句分析
switch语句对应单个条件多个分值的情形;
case语句的分支必须要有break,否则会导致分支重叠;
default语句有必要加上,以处理特殊情况。
case语句中的值只能是整型或字符型,并且只能是常量。
case语句的排列顺序
按字母或者数字顺序排列各条语句;
正常情况放在前面,异常情况放在后面;
default语句只用于处理真正的默认情况。
if和switch使用示例:
#include <stdio.h> void f1(int i) { if( i < 6 ) { printf("Failed! "); } else if( (6 <= i) && (i <= 8) ) { printf("Good! "); } else { printf("Perfect! "); } } void f2(char i) { switch(i) { case ‘c‘: printf("Compile "); break; case ‘d‘: printf("Debug "); break; case ‘o‘: printf("Object "); break; case ‘r‘: printf("Run "); break; default: printf("Unknown "); break; } } int main() { f1(5); f1(9); f1(7); f2(‘o‘); f2(‘d‘); f2(‘e‘); return 0; }
switch语句和if语句相互替换后的示例
#include <stdio.h> void f1(int i) { switch( i < 6 ) { case 1: printf("Failed! "); break; default: switch( (6 <= i) && (i <= 8) ) { case 1: printf("Good! "); break; default: printf("Perfect! "); break; } break; } } void f2(char i) { if(‘c‘ == i) { printf("Compile "); } else if(‘d‘ == i) { printf("Debug "); } else if(‘o‘ == i) { printf("Object "); } else if(‘r‘ == i) { printf("Run "); } else { printf("Unknown "); } } int main() { f1(5); f1(9); f1(7); f2(‘o‘); f2(‘d‘); f2(‘e‘); return 0; }
小结:
·if语句适用于复杂逻辑进行判断的情形中
·switch语句适用于对离散值进行判断的情形中
·if和switch语句在功能上可以相互替换
·if语句对于“按片”分支判断的情形更加简洁
·switch语句对于多分支判断的情形更加简洁
以上是关于第6课 - 分支语句的主要内容,如果未能解决你的问题,请参考以下文章
《快乐编程大本营》java语言训练班-第4课:java流程控制