简介
c语言中有五种不同的种语句,它们分别是:1. 表达式语句2. 函数调用语句 3. 控制语句4. 复合语句5. 空语句
而我今天要说的是控制语句里面的分支和循环。
我们首先要知道什么是控制语句。
控制语句用于控制程序的执行流程,以实现程序的各种结构方式,它们由特定的语句定义符组成,C语言有九种控制语句。可分成以下三类:
条件判断语句也叫分支语句:if语句、switch语句;
循环执行语句:do while语句、while语句、for语句;
转向语句:break语句、goto语句、continue语句、return语句。
这几种语句就是我们今天的主角
分支语句
if
if很简单,if的结果就是真假,根据结果的真假去对应结果即可。
if语句的使用方法就是
if(表达式)
语句1
else
语句2
当然if后面可以继续接上判断语句
if(表达式)
语句1
else if(表达式)
语句2
else
语句3
就像这样,根据需求,后面可以无限添加else if
#include<stdio.h>
int main()
{
int a = 0;
if (a==0)//表达式
{
printf("hehe\n");//语句1
}
else if(a>0)//表达式
{
printf("haha\n");//语句2
}
else
{
printf("heihei\n");//语句3
}
return 0;
}
switch
switch是一种分支语句,常用于多分支的情况。
switch
switch(整形表达式)
{
case 1
case 2
case3
defaul
}
case即为一种输入,会对应一个结果,当然结果需要自己写。如果case都不能满足,就进入default。default的位置不做要求,但是只能存在一个。
特别注意,输入只能是整形,float形式是不能在switch语句中使用的
#include<stdio.h>
int main()
{
int day = 1;
switch (day)
{
case 1:
printf("Monday\n");
break;
case 2:
printf("Tuesday\n");
break;
case 3:
printf("Wednesday\n");
break;
case 4:
printf("Thursday\n");
break;
case 5:
printf("Friday\n");
break;
case 6:
printf("Saturday\n");
break;
case 7:
printf("Sunday\n");
break;
default:
break;
}
return 0;
}
嘿嘿,发现了一些不同的东西了吧,没错,break,为啥要加它呢,举个例子,在没有所有的break时,我输入了6,结果将不再是Saturday,而是
Saturday
Sunday
唉?!多了些奇怪的东西,没错,在打印完6的结果,它继续向下执行,把7的结果也带出来了,这时候我们就要说说break的作用了。
switch中的break,能帮助我们实现真正的分支。switch语句执行时会从上到下根据括号中表达式的值作比较,当某个case语句中的表达式与此值相同时,就执行这个case语句或语句序列,直到遇到break为止。 break语句是必须有的,它用来结束switch语句的执行。
循环语句
while
while是计算机的一种基本循环模式。当满足条件时进入循环,进入循环后,当条件不满足时,跳出循环。while语句的一般表达式为:
****while(表达式)
{循环体}。
#include<stdio.h>
int main()
{
int a = 0;
while (a < 100)
{
//语句内容
++a;
printf("%d\t", a);
}
return 0;
}
for
or循环:编程语言中一种循环语句,而循环语句由循环体及循环的判定条件两部分组成。
for(表达式1; 表达式2; 表达式3)
循环语句;
表达式1:
表达式1为初始化部分,用于初始化循环变量的。
表达式2:
表达式2为条件判断部分,用于判断循环时候终止。
表达式3:
表达式3为调整部分,用于循环条件的调整。
do while
do…while 循环: while 循环的变体。在检查while()条件是否为真之前,该循环首先会执行一次do{}之内的语句,然后在while()内检查条件是否为真,如果条件为真的话,就会重复do…while这个循环,直至while()为假。
#include<stdio.h>
int main()
{
int a = 0;
do
{
printf("%d\t", a);
a++;
} while (a < 100);
return 0;
}
continue结束的是本次循环,break结束的是本层循环,而return可以跳出所有循环
goto语句
goto语句:也可以称为无条件转移语句,其一般格式如:goto 语句标号; 其中语句标号是按标识符规定书写的符号, 放在某一语句行的前面,标号后加半角冒号“:”。语句标号起标识语句的作用,与 goto 语句配合使用。额不得不说一句,这个我还了解不够,这个就欢迎各位大佬补充了,或者我下一篇在完善。