day05
六、控制语句
1.顺序语句
在模块内部没有分支、跳转、循环等条件时,程序按照顺序执行
2.分支语句
选择语句
if...else
单分支
if(表达式)
{
代码块;
}
step:先判断表达式是否为真(非0为真,0为假)
如果为真,进入if选择结构,执行选择语句中的代码块
如果为假,跳过if选择结构
双分支
if(表达式)
{
代码块;
}else{
代码块;
}
step:
先判断表达式是否为真,如果为真执行代码块1,如果为假执行代码块2;
注意:
1)if语句后的代码块要用{},代表一个模块
2)else与之前未配对的if进行配对
多分支:
if(表达式1){
代码块1;
}else if(表达式2){
代码块2;
}else if(表达式3){
代码块3;
}else{
代码块4;
}
step:
先判断表达式1是否为真:
如果为真,执行代码块1;
如果为假,继续判断表达式2;
switch...case
switch(表达式)
{
case 常量表达式1:
代码块1;
break;
case 常量表达式2:
代码块2;
break;
case 常量表达式3:
代码块3;
break;
...
default:
代码块4;
}
step:
根据switch表达式中的值,判断switch体系中,case后的常量表达式是否满足该条件,如果有条件满足,则从case对应的语句开始执行;如果条件都不满足,则执行default中的语句块;
break:强行跳出switch体系;
2)从键盘上输入1~7的整形数据,打印星期一~星期日
eg:
switch(n)
{
case 1: printf("星期一\n");
break;
case 2: printf("星期二\n");
break;
case 3: printf("星期三\n");
break;
case 4: printf("星期四\n");
break;
case 5: printf("星期五\n");
break;
case 6: printf("星期六\n");
break;
case 7: printf("星期日\n");
break;
}
return 0;
3.循环语句
1)while
一般形式
while(表达式)
{
循环体;
}
step
先判断表达式是否为真(非0为真),如果为真,执行一次循环体
eg:
int main(int argc, char *argv[])
{
int i = 2;
while(++i< 5){
printf("i = %d\n",i);
}
printf("最后的i = %d\n",i);
return 0;
}
//打印结果:
i = 3
i = 4
最后的i = 5
eg:
int main(int argc, char *argv[])
{
int i = 2;
while(i++ < 5){
printf("i = %d\n",i);
}
printf("最后的i = %d\n",i);
return 0;
}
//打印结果:
i = 3
i = 4
i = 5
最后的i = 6
2)do...while
一般形式:
do{
循环体;
}while(表达式);
step:
先执行一次循环体,再判断表达式
如果为真,继续执行循环...
如果为假,跳出循环体
注意:先执行,再判断
3)for循环
一般形式:
for(表达式1;表达式2;表达式3)
{
循环体;
}
表达式1:循坏控制变量的初始化
表达式2:循环退出条件
表达式3:循环控制变量的自增或自减
step:
先执行表达式1(只执行一次)
再执行表达式2,判断表达式2是否为真
如果为真执行循环体,并执行表达式3
再次判断表达式2是否为真...
如果为假,直接跳过循坏体
标签:case,do,循环体,##,代码,day05,break,printf,表达式
From: https://blog.csdn.net/2201_75349894/article/details/140561129