秒懂C语言循环语句

C语言当中的循环语句有 for() whlie() do…while() 三种。

while循环

while 循环,while 循环的括号里面放的是表达式,表达式判断为真,就继续循环,如果表达式判断为假,就跳出循环。在屏幕上打印1-10的数字:

int main()
{
	int i = 1;
	while(i<=10)
 	{
 		printf("%d ", i);
 		i = i+1;
	}
 	return 0;
}

这个while循环表达式的判断条件是 i<=10 当判断为假的时候,就跳出循环。每次循环打印之后,i 都会加1 。当 i 加到 11 的时候 就退出了 while 循环。

while循环当中的break和continue

while 循环当中,还有 break,和 continue 语句。break 的是跳出当前的循环,continue 是跳过 continue 下面的代码,然后返回去执行判断语句。

break

int main()
{
 	int i = 1;
 	while(i<=10)
 	{
 		if(i == 5)
 		{
 			break;
 		}
 		printf("%d ", i);
 		i = i+1;
 	}
 	return 0;
}

这段代码的执行结果是:打印1 2 3 4。
因为在 while 循环当中,有了 if 判断语句,当 i 等于 5 的时候,执行 break 然后跳出循环。所以没有打印5。

continue

int main()
{
 	int i = 1;
 	while(i<=10)
 	{
 		if(i == 5)
 		continue;
 		printf("%d ", i);
 		i = i+1;
 	}
 	return 0;
}

这段代码的输出结果是:只打印 1 2 3 4 ,然后程序就死循环了,就是下图这样。
在这里插入图片描述
因为当 i 等于5的时候,程序就执行 if 语句 然后就一直 continue ,而且 i 的值也不会变,因为并没有执行下面的 i = i + 1 所以就一直死循环。

int main()
{
	int i = 0;
	while (i < 10)
	{
		i = i + 1;
		if (i == 5)
			continue;
		printf("%d ", i);
	}
	return 0;
}

这段代码的输出结果就是:1 2 3 4 6 7 8 9 10 。 因为 i = i + 1 ,在 if 的continue 前面。所以只有当 i 等于 5 的时候,才会执行 continue 。

for循环

for(表达式1;表达式2;表达式3)
	循环语句;

for 循环的表达式1是初始化语句,表达式2是判断语句,表达式3是调整语句。用 for 循环打印 1-10 数字。

int main()
{
	int i = 0;
	for (i = 1; i <= 10; i++)
	{
		printf("%d ", i);
	}
	return 0;
}

这咯和 while 循环不一样的就是调整语句放在了最上面,所以就不需要在循环内部进行 i + 1 了。如果还要在循环内部调整的话,就会打乱循环的执行次数。

for循环的break

在 for 循环当中的 break 和 while 循环当中的一样,都会跳出当前循环。

int main()
{
	int i = 0;
	for (i = 1; i <= 10; i++)
	{
		if (i == 5)
			break;
		printf("%d ", i);
	}
	return 0;
}

代码的执行结果是:1 2 3 4

当 i 加到 5 的时候,执行 if 里面的 break 。所以跳过循环。

for里面的continue

for 循环里面的 continue 和 while 循环里面的 continue 用法一样,也是跳过执行 continue 下面的代码,去执行判断部分的代码。

int main()
{
	int i = 0;
	for (i = 1; i <= 10; i++)
	{
		if (i == 5)
			continue;
		printf("%d ", i);
	}
	return 0;
}

代码的执行结果是:1 2 3 4 6 7 8 9 10 。因为当 i 等于 5 的时候,就执行 continue 语句,然后跳过打印 5 。

do while循环

do while 循环是至少执行一次,执行完一次后进行判断,当判断为真就继续执行,如果判断为假就跳出循环。

do
 	循环语句;
while(表达式);

因为不论如何都要执行一次,所以使用场景相对来说就少了一些,do while 循环里面的 break continue 也和 while 循环 for 循环里面的用法一样。

int main()
{
	int a = 1;
	int i = 0;
	do 
	{
		printf("%d\n", a);
		i++;
	} while (i < 10);
	return 0;
}

这就是 while 循环的简单使用。实际使用来说,还是 for 循环 用的相对多。

go to 语句

go to 语句就是通过标记,跳到标记的位置。如下:

int main()
{
flag:
	printf("haha\n");
	goto flag;
	return 0;
}

这里就是死循环打印 haha 因为 goto 语句跳到 flag 了,所以就一直死循环了。

当然,goto 语句的另外一个好处就是能一次性跳出好多个嵌套的循环,就不需要一直 break 了。

  • 7
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Lockey-s

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值