引言
众所周知,循环和判断语句作为C语言中最基本的语法之二,在我们写代码时是必不可少的,这篇文章将为你介绍循环与判断两种语法的细致分类及其用法
循环
while循环
- while循环的基本用法如下
while(条件表达式)
{
循环内容;
}
当条件表达式返回1,也就是条件成立时,则会一直循环,当未达到条件时则会停止循环
这里也可以得到一个小结论,如果写的是while(1)则会进入死循环,如果不使用‘break’语句或其他强制结束循环语句,则无法跳出循环(在文章的后半段会讲解‘break’语句的用法)
while语句对比do while循环不同的是,条件判断不成立时,条件表达式是不会执行的
例:
int a = 6;
while(a- – == 5)
{
循环内容;
}
但是a–其实是不会执行的,a的值依旧是6
(小问题:条件表达式改为‘- -a == 5’时,循环会执行吗?)
- while循环的应用场景
1.判断条件跟维持循环的条件需要分开写时
2.判断和维持循环的条件简单,可以用条件表达式一起表达时如’ while(a- -) ‘
for循环
- for循环的基本用法如下
for(初始化表达式1; 条件表达式2; 循环表达式3)
{循环内容}
初始化表达式1指可以在此表达式中初始化一个值,如(int a = 0)
条件表达式2则用于判断循环是否能正常进行,如(a < 10)
循环表达式3则会在每次循环结束后执行,r如(a++)
- for循环的应用场景
1.需要初始化一个值时
2.控制循环的表达式较为简单,如(a++)
3.循环次数较为明确
- 注意事项
1.for循环中除了条件表达式以外的两个表达式均可以省略掉,但是不建议,因为这样就没有使用for循环的意义了
2.初始化表达式在循环中只执行一次!
do while循环
- do while循环的基本用法如下
do{
循环内容;
}while(条件判断式);(注意一定要加上分号’ ; ‘)
与其他循环最大的区别是,do while循环无论条件表达式是否成立都会执行一次,包括条件表达式也会执行一次
- do while循环的应用场景
1.与while循环大同小异
2.需要至少要执行一次的循环时使用
3.通常用于游戏的制作中,因为游戏至少要执行一次
goto循环
严格来说,我个人认为goto语句不能算一个完整的循环语句,而是通常与if判断语句连用
- goto循环的基本用法如下
n:
if(条件表达式)
{goto n;}
如果if条件表达式成立,则会从’n’处重新执行’n’以后的语句
- goto循环的应用场景
在嵌套的代码中使用很好用
- 注意
1.多处使用do while循环会导致代码混乱,不建议多次使用
2.不能跳出函数,不能跳入另一个函数,只能在同一函数内跳转
循环结束方式
- 通过正常条件判断结束
- break结束循环
通常用来在循环里满足一条件需要跳出时使用,例如游戏的结束
break用法如下:
for (int i = 1; i <= 10; ++i)
{
if (i == 5)
break;
printf(“%d “, i);
}
遇到 5 就跳出循环 ,结束循环
- continue结束本次循环
与break不同的是,continue只是结束当前这一次的循环,跳到下一次循环,并不会直接跳出这个循环
continue用法如下:
for (int i = 1; i <= 10; ++i)
{
if (i % 2 == 0)
continue;
printf(“%d “, i);
}
return 0;
偶数跳过,继续下一轮
判断
if判断语句
if判断语句是使用频率最多的判断语句,可以在大多数情况使用,通常与else进行连用
- if语句的一般用法如下
if (a > 0) {
printf(“正数\n”);
}
else {
printf(“非正数\n”);
}
- if语句的连用,例子如下
if (s >= 90) printf(“A\n”);
else if (s >= 80) printf(“B\n”);
else if (s >= 70) printf(“C\n”);
else if (s >= 60) printf(“D\n”);
else printf(“E\n”);
要注意的是if的条件表达式后面不要加上分号( ; ),否则else将无法找到对应的if语句,代码会出错!
switch判断语句
- switch语句的一般用法如下
int input = 0;
scanf(“%d”, &input);
switch(input)
case 1:
内容;
break;
case 2:
内容;
break;
default:
内容;
接下来我们将分布解析
- input的作用
‘input’在此处是作为选择的标准,可以是整数,也可以是其他的变量
- case的作用
‘case’的意义根据选择的不同(也就是不同的input),执行相对应的代码而’case’后面接的数字或是其他常量,则是代表‘input’的值,例如input = 1,则会执行case 1对应的代码
要特别注意的是case后要接一个空格才能写常量的值,并且写完常量后要接一个冒号’ : ‘,否则代码无法执行
- break的作用
break的作用在前面有说明,可以翻看,在这里的主要作用也是跳出switch语句,如果不使用break,那么在执行了’ case 1 ‘之后会依次往后将所有语句执行一遍,无法达到选择的目的
- default的作用
如果’input’的值无法对应case中的任何一项,那么就会执行default中的代码,防止switch语句不执行
三目操作符判断
因为在之前的博客文章《操作符分类及用法》已经详细讲解了,这里不在赘述,感兴趣可以点击标题了解
总结
本篇文章只是简略的对循环和判断进行了讲解,具体的实现还是要多靠自己写代码,加油吧!

评论(2)