一、分支语句
1、分支语句的作用
设置条件,用来判断是否进入分支语句。
2、分支语句的写法
1、if 语句
if (表达式)
语句1; // 如果表达式的结果为真, 则语句执行.
if (表达式)
语句1;
else
语句2;
// 多分支
if (表达式1)
语句1;
else if (表达式2)
语句2;
else
语句3;
2、swich语句
int main()
{
int day = 0;
scanf("%d", &day);
//if (1 == day)
// printf("星期1\n");
//else if (2 == day)
// printf("星期2\n");
//else if(3 == day)
// printf("星期3\n");
//else ....
int n = 1;
switch (day)
{
case 1:
case 2:
case 3:
case 4:
case 5:
printf("weekday\n");
break;
case 6:
case 7:
printf("weekend\n");
break;
default:
printf("选择错误\n");
break;
}
return 0;
}
3、分支语句的应用例子
1判断年纪(if)
int main()
{
int age = 0;
scanf("%d", &age);
if (age < 18)
{
printf("未成年\n");
}
else
{
printf("成年\n");
}
}
2、判断星期一到星期日(swich)
int main()
{
int day = 0;
scanf("%d", &day);
switch (day)
{
case1:
printf("星期一\n");
case2:
printf("星期二\n");
case3:
printf("星期三\n");
case4:
printf("星期四\n");
case5:
printf("星期五\n");
case6:
printf("星期六\n");
case7:
printf("星期七\n");
}
return 0;
}
4、悬空else
有以下经典错误:
#include<stdio.h>
int main()
{
int a = 0;
int b = 1;
if (a == 1)
if (b == 1)
printf("AWA\n");
else
printf("XAX\n");
}
这里实际上是编写的问题, 我们是希望else
和if(a==1)
是匹配的, 但是当讲上面的代码复制到编译器了之后, 编译器运行后就会把else
和if(b==2)
匹配到一起. 所以运行结果就会什么都没有打印.
那么这里的原因就是else的匹配: else是和它离的最近的if匹配的.
所以要想实现预期结果, 就需要添加{}
进行代码块化处理.
二、循环语句
1、循环语句的作用
在一个条件语句约束下,重复执行一段代码
2、循环语句的写法
1、while循环
//while 语法结构
while(表达式)
循环语句;
2、for循环
for (init-statement; condition; inc-expression) {
}
3、do.......while
do
循环语句;
while(表达式);