switch语句
- 一个变量有多种植的情况下,不同的值对应的情况不同,根据不同的值执行不同的语句。
switch(表达式){
case 常量表达式1:
语句1;
case 常量表达式2:
语句2;
、、、、、、
case 常量表达式n:
语句n;
default:
语句n+1;
}
1、表达式必须是一个常量(int,char类型等)或者枚举类型
2、表达式与常量表达式必须是相同的数据类型
3、当表达式的值等于某个常量表达式的值后,执行该表达式之后的语句
4、当语句中出现break的时候,语句中断,并跳出switch
5、如果case语句不包含break,控制流将会继续后续的case,直到遇到break为止
6、一个switch语句可以有一个可选的default,出现在switch的末尾
switch(a) {
case 1:
printf("你输入的数字是1\n");
break;
case 2:
printf("你输入的数字是2\n");
break;
default:
printf("你输入的数字是3\n");
break;
}
for循环
1、循环控制变量的定义和初始化只执行一次
2、表达式1、表达式2和表达式3之间使用分号“;”隔开的
3、for(表达式1;表达式2;表达式3)的后面不加(;)分号
4、for循环的循环条件(condition)是决定循环的次数
5、for( ; ; )与while(1)等价,都是死循环,不停的执行语句
for(int i = 1;i <=10;i++){
printf("i = %d\n",i);
if(i==10)
i = 0;
}
/* for(int i = 1;i <=10;){
printf("i = %d\n",i);
i++;
}
*/
for(int i = 1;i <=10;i++){
printf("i = %d\n",i);
if(i == 5){
break;
}
}
for(int i = 1;i <=10;i++){
if(i == 5){
continue;
}
printf("i = %d\n",i);
}
第一个不停的输出1~10,进入死循环
第二个输出1~5
第三个输出1~10,排除5
while循环
while(条件语句){
语句块
}
1、先判断条件,当条件为真,执行“语句块”
2、执行完语句块,再次判断条件,如果为真,继续执行
3、重复执行这个过程,直到条件判断为假,,就退出循环
int i = 1;
int sum = 0;
while(i<=100){
sum += i
i++;
}
printf("sum = %d\n",sum);
计算从1加到100;结果为5050
break与continue关键字
- break
在switch语句,当遇到break时,不再执行switch中任何语句
在while,for循环中,当遇到break时,就会终止循环而执行整个循环语句后面的代码
- continue
跳过循环体中剩余的语句进入下一循环(只用于while,for循环语句中)