您的位置:首页 > 其它

第6课 分支语句

2016-03-25 00:36 176 查看
1. if语句

(1)if语句用于根据条件选择执行语句

(2)else不能独立存在且总是与它之前最近的if相匹配

(3)else语句后可以接连其他if语句



(4)if语句中零值比较的注意点

  ①bool型变量直接出现于条件中,不要进行比较

  ②变量和0值比较时,0值应该出现在比较符号左边

  ③float型变量不能直接进行0值比较,需要定义精度



2. switch语句分析

(1)switch语句对应单个条件多个分值的情形

(2)case语句分支必须要有break,否则会导致分支重叠

(3)default语句有必要加上,以处理特殊情况

(4)case语句中的值只能是整型或字符

(5)case语句的排列顺序

  ①按字母或数字顺序排列各条语句

  ②正常情况放在前面,异常情况放在后面

  ③default语句只用于处理真正的默认情况

【编程实例】

if和switch的使用示例有趣的角色互换
#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('o');
f2('d');
f2('e');

return 0;
}


#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('o');
f2('d');
f2('e');

return 0;
}


3. 小结

(1)if语句适用于复杂逻辑进行判断的情形中

(2)switch语句适用于离散值进行判断的情形中

(3)if语句和switch语句在功能上可能相互替换

(4)if语句对于“按片”分支判断的情形更加简洁

(5)switch语句对于多分支判断的情形更加简洁
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: