C语言中循环语句(while)

循环语句
(i)while
(ii)for
(iii)do while
循环语句三要素:
1.循环变量的初始化;
2.循环条件;
3.循环变量的更新语句
首先来看while循环,前面我们已经掌握了if语句:

if(条件)
	语句;

当天件满足的时候,就执行if后面的语句,否则就不执行.注意这个语句只会执行一次.但是在我们的日常生活当中,同一件事我们并不是只需简单的选择去做或不去做,有时候,同一件事情我们需要完成很多次.这个时候我们该怎么做呢?这就引入了我们C语言当中的while语句.

//while 语法结构
while(表达式)
	循环语句;

while语句执行的时候,只要满足表达式条件,循环就会一直进行下去,直到条件不满足,跳出循环.
举例来说明,比如我们现在要打印1-10的数字.

#include <stdio.h>
int main(){
	int i;
	while (i < 11){
		printf("%d\n",i);
		i = i+1;
	}
}

这个代码能够帮助我们了解while语句的基本语法,紧接着我们在while语句的运用当中加入break和continue.
先来看一段含有break实例的代码

#include <stdio.h>
int main(){
	int i = 1;
	while (i < 11){
		if (i == 5){
			break;
		}
		printf("%d\n",i);
		i = i + 1;
	}
}

break是用来跳出循环的,所以输出结果如下图所示
结果如图
其实在循环中只要遇到break,就停止后面的所有循环,直接终止循环.所有,while语句中的break是用于永久终止循环的.
接下来看continue的代码实例.

#include <stdio.h>
int main(){
	int i = 1;
	while(i <= 10){
		if (i == 5){
			continue;
		}
		printf("%d\n",i);
		i = i + 1;
	}
}

想想这样输出结果会怎样?如图所示如图所示
这样使得程序陷入了死循环,因为continue的作用是用来终止本次循环的,在程序中i = i + 1放在了continue 之后也就意味着,由于continue跳出循环使得i的值并没有自增1,也就是i = 5,从而程序会一直执行 i == 5 的循环语句并不断跳过,所以程序修改如下

#include <stdio.h>
int main(){
	int i = 1;
	while(i <= 10){
		i = i + 1;
		if (i == 5){
			continue;
		}
		printf("%d\n",i);
		i = i + 1;
	}
}
这样输出的结果如下图

如图所示
因此continue在while语句中的作用就是用来终止本次循环的,也就是说本次循环中continue后边的代码不会再执行,而是直接跳转到while语句的判断部分.进行下一次循环的入口判断.

猜你喜欢

转载自blog.csdn.net/weixin_44781107/article/details/88915775