2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > 【C语言】if if else else switch的用法

【C语言】if if else else switch的用法

时间:2024-04-02 17:26:49

相关推荐

【C语言】if if else else switch的用法

目录

1. if多重判断

1.1 if

1.2 else if

1.3 else

2. switch多重判断

1. if多重判断

1.1 if

如果程序中判断事件很多,全部用if的话,会遍历整个程序,效率低。

1.2 else if

如果if的判断没有通过,则进行下面的else if,如果当前的else if判断通过,则只执行当前else if的语句。如果没通过,则一直执行下面的else if判断。

1.3 else

else为最后的分支,如果在else之前的if、else if判断都没有通过就会执行else。

注:在一条if条件判断中,可以有无数条else if,但是只能有一个else。在一个if条件判断中,如果之前的if和else if都未通过,那么执行到else为无条件通过

2. switch多重判断

当分支比较少的时候我们使用if else语句解决,当分支比较多的时候,我们要使用switch case语句解决,针对分支的复杂性选择合适的程序解决。

当分支过多时,用 if else 处理会不太方便,而且容易出现 if else 配对出错的情况。例如,输入一个整数,输出该整数对应的星期几的英文表示:

switch(表达式){case 整型数值1: 语句 1;break;case 整型数值2: 语句 2;break;......case 整型数值n: 语句 n;break;default: 语句 n+1;}执行过程:1 . 首先计算“表达式”的值,假设为 m。2 . 从第一个 case 开始,比较“整型数值1”和 m,如果它们相等,就执行冒号后面的所有语句,也就是从“语句1”一直执行到“语句n+1”,而不管后面的 case 是否匹配成功。3 . 如果“整型数值1”和 m 不相等,就跳过冒号后面的“语句1”,继续比较第二个 case、第三个 case……一旦发现和某个整型数值相等了,就会执行后面所有的语句。假设 m 和“整型数值5”相等,那么就会从“语句5”一直执行到“语句n+1”。4 . 如果直到最后一个“整型数值n”都没有找到相等的值,那么就执行 default 后的“语句 n+1”。

break 是C语言中的一个关键字,专门用于跳出 switch 语句。所谓“跳出”,是指一旦遇到 break,就不再执行 switch 中的任何语句,包括当前分支中的语句和其他分支中的语句;也就是说,整个 switch 执行结束了,接着会执行整个 switch 后面的代码。

#include <stdio.h>int main(){int a;printf("Input integer number:");scanf("%d",&a);switch(a){case 1: printf("Monday\n"); break;case 2: printf("Tuesday\n"); break;case 3: printf("Wednesday\n"); break;case 4: printf("Thursday\n"); break;case 5: printf("Friday\n"); break;case 6: printf("Saturday\n"); break;case 7: printf("Sunday\n"); break;default:printf("error\n"); break;}return 0;}

1 . case 后面必须是一个整数,或者是结果为整数的表达式,但不能包含任何变量。

2 . default 不是必须的。当没有 default 时,如果所有 case 都匹配失败,那么就什么都不执行。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。