C语言的语句分为一下五类:
1:表达式语句
2:控制语句
3:函数调用语句
4:复合语句
5:空语句
本次主讲内容:控制语句
分支语句的两个类型:if语句跟Switch语句
首先来看if语句
#include
int main()
{
int a = 0;
if (a < 5)
{
printf("哈喽!");
}
return 0;
}
一般注意以下几点:
1:如果满足if后面的条件,它就会进入if语句,否则跳过
2:多个if语句,它会依依判断是否满足条件
下面是if语句的结构(需要注意if后面没有分号,否则代表该语句已经结束)
if(条件式)
执行语句;
else作为一种分支,给表达式提供了另一种路线
int main()
{
int a = 0;
if (a < 5)
printf("haha!");
else
printf("hehe!");
return 0;
}
可以用语文思路理解,为了表达式可以给阅读者视觉的整齐,美观,经常采用对齐的形式
需要注意的是:if与else会跟最近的执行语句相匹配,就近原则,列如:
int main()
{
int a = 0;
if(a>=0)//1
if (a < 5)//2
printf("haha!");
else
printf("hehe!");
return 0;
}
“2”会与最近的执行语句相匹配,那么“1”就会自己作为整个分支的判断语句,整个语句因为不满足第一个if的条件,就不会执行,结果如下:
Switch作为另外一种分支,经常解决if跟else繁琐的情况,结构:
switch(整型表达式)
{
语句项;
}
它的结果根据case “x”来判断,列如:
#include
int main()
{
int day = 0;
switch(day)
{
case 1:
printf("星期一\n");
break;
case 2:
printf("星期二\n");
break;
case 3:
printf("星期三\n");
break;
return 0;
}
这里的数字“1”,“2”,“3”都指的是switch后面的判断语句得到的结果,比较固定
经常用来处理其它不符合整个表达式的结果,列如:答案只有1和2,你如果输入3,那么就会走default语句,其实他就是把case替换来使用,需要注意的是,如果不加break,那么就不会节数这个判断,会一同打印下面的执行语句,列如:
#include
int main()
{
int a = 0;
scanf("%d", &a);
switch (a)
{
case 1:
printf("haha");
break;
case 2:
printf("hehe");
break;
default:
break;
}
return 0;
}
用来结束一个判断或者循环,如上面代码,因为简单,就不多说了!
通常指for循环,while循环,do while循环
#include
int main()
{
int a = 0;
for (a = 1; a <= 5; a++)
{
printf("hahha");
}
return 0;
}
结构:for(初始化;范围;变化),注意循环语句要打“{}”
#include
int main()
{
int a = 5;
while(a=5)
{
printf("hahha");
}
return 0;
}
while语句结构:while(循环判断语句)
这个循环语句它至少循环一遍,结构:
do
{
语句;
}
wuile(循环条件)
列如:
#include
int main()
{
int a = 5;
do
{
printf("hahha");
} while (a = 5);
return 0;
}
这个简单暴力,直接会跳到其它语句,结构:goto 语句;,最好少用,因为可能引起代码混乱
列如:
int main()
{
ant:
int a = 5;
printf("hahha");
goto ant;
return 0;
}