欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

分支和循环语句

程序员文章站 2022-04-06 12:27:31
...

分支语句和循环语句
分支语句:
if
switch
循环语句:
while
for
do while

分支语句
Eg.
else if(age>=18 && age<30)//18<=age<=30是错误的,不能用数学方式表示
printf(“青年\n”);

Eg.
if (a == 1)
if(b == 2)
printf(“hehe\n”);
else
printf(“haha\n”);
return 0;
//else是和离它最近的if匹配

Eg.
int num = 1;
if(5 == num)//用两个等号判断是否相等,用一个等号判断是 否为真
{
printf(“hehe\n”);
}
return 0;
}

****switch(整型表达式)
case(整型常量表达式)****

Eg.
int day = 1;
scanf("%d", &day);
switch(day)//int day表day是整型
{
case 1://1是常量
printf(“星期1\n”);
break;
case 2:
printf(“星期2\n”);
break;
Switch 只有搭配break 才能实现真正的分支,比如满足case1后,就直接跳出去了,若不带break,则即使满足case1,也会继续执行case2,case3………
case是入口,break是出口
但有时候,case后面不一定每个都要加break

Eg.
int day = 1;
scanf("%d", &day);
switch(day)
{
case 1:
case 2:
case 3:
case 4:
case 5:
printf(“工作日\n”);
break;
case 6:
case 7:
printf(“休息日\n”);
break;
default:
break;

当switch表达式的值与所有的case标签的值都不匹配时,就用default
default可以出现在语句列表的任何位置,但每个switch语句中只能出现一条default

练习
int main()
{
int n = 1;
int m = 2;
switch (n)
{
case 1:m++;
case 2:n++;
case 3:
switch (n)
{ //switch允许嵌套使用
case 1: n++;
case 2: m++;n++;break;
}
case 4:m++;break;
default:break;
}
printf(“m = %d, n = %d\n”, m, n);
return 0;
}
具体过程:
分支和循环语句
分支和循环语句

循环语句
break与continue的区别
break:只要遇到break,就停止后期的所有循环,直接终止循环,用于永久终止循环
continue:用于终止本次循环,也就是本次循环中continue后面的代码不会再执行,而是直接跳到while语句的判断部分,进行下一次循环的入口判断
Eg1.
分支和循环语句
运行结果是1 2 3 4
当i=5时,跳到continue,此时i=1,又重新开始,1234,1234,1234。。。。
Eg2.
分支和循环语句
运行结果是 2 3 4 6 7 8 9 10 11
eg1与eg2对比
分支和循环语句
表达式1 表达式1为初始化部分,用于初始化循环变量的。 表达式2 表达式2为条件判断部分,用于判断 循环时候终止。 表达式3 表达式3为调整部分,用于循环条件的调整。
Eg3.
分支和循环语句
运行结果是1 2 3 4 6 7 8 9 10
这个for的带continue的循环与上面的while的带continue的循环的细微差别在于:
for 的初始化只有一次:i=1,而while的初始化在continue每次重新返回时,每次都会重新初始化:i=1
eg1与eg3对比

Eg.
//请问循环要循环多少次?
分支和循环语句
运行结果:0次