版权声明:如果觉得文章对你有用,转载不需要联系作者,但请注明出处 https://blog.csdn.net/jinxin70/article/details/83217373
switch格式
switch格式:
switch (条件表达式)
{
case 整数: // case可以有一个或多个
语句;
break;
case 整数: // case可以有一个或多个
语句;
break;
default:
语句;
break;
}
如何结束switch语句:
1.遇到break
2.执行到switch对应的大括号的结束 }
Switch得条件表达式注意点
Switch的条件表达式必须是返回整数的表达式, 也就是说()中只能放整数。
或者写能够转换为整数的类型也可以, 例如char, 因为char类型可以转换为int类型, 所以写char也可以
switch ('A') {
case 6:
printf("6");
break;
case 8:
printf("8");
break;
default:
printf("other");
break;
}
case的取值
// Switch中, case后面只能放返回值是整数的表达式或者整数, 或者能够转换为整数的类型
// case的取值不能重复
// case后面不能放变量, 因为系统在编译的时候会对Switch后面所有的case进行优化, 会根据case后面的常量值, 生成一张取值表
int number = 7;
switch (6) {
case 3 + 3:
printf("6");
break;
case 'A':
printf("8");
break;
// case number:
// printf("8");
// break;
default:
printf("other");
break;
}
default的位置问题
// Switch中的default可以随便放
// 无论default写到什么地方, 它都会最后执行(只有前面所有的case都不满足的情况才会执行)
// 只要某一个case满足, 那么后面所有的case和default都会失效
// 同理: 只要default满足, 那么所有的case都会失效
switch (20) {
default:
printf("other\n");
// break;
case 6:
printf("6");
break;
case 8:
printf("8");
break;
}
while循环
最简单的死循环
while (1);
break
continue
do while
至少会执行依次循环体
for 循环
任何数值都有真假新
for (; 1; ) {
printf("lnj");
}
其实, 初始化表达式和循环后增量表达式可以写多条语句, 语句之间用,号连接
for (int i = 0, j = 0; i < 2; i++, j++)
{
printf("i = %i j = %i\n", i, j);
}
死循环
for(;;); // 注意: for循环中的条件表达式默认为真