C语言基础——循环语句(for,while,do while)

        循环语句是重复执行一段代码直到满足条件为止,当然也可以中途跳出。在C语言中的三种循环语句是:for、while、do while;以及可以中途跳出循环的两个语句:break和continue。

目录

1.for循环

2.while循环

3.do-while循环

4.break语句

5.continue语句

5.1 在for中的continue代码如下:

5.2在while中的continue代码如下:

1.for循环

for循环是三种循环中使用最多的,基本的结构如下:

for(初始化;判断;变量的调整)
{
    循环语句;
}

在使用for循环之前我们要知道它是怎么实现的,首先会初始化变量,然后判断,如果为真,执行循环语句;如果不为真就跳出循环,最后调整变量。接下来我们来通过打印1~9来具体讲解,例程如下:

#inclde <stdio.h>
int main()
{
    int i=0;
    for(i=1;i<10;i++)
    {
        printf("%d ",i);
    }
    return 0;
}

首先定义变量并初始化,可以在初始化的位置定义变量并初始化

其次判断 i<10 是否成立

如果 i<10 成立,执行循环语句

如果 i<10 不成立,跳出循环

然后调整变量 i++

最后从其次又往下执行,直到判断不成立跳出循环

运行结果如下:

如果初始化、判断和变量的调整都是空的话,那么这个for就会死循环,我们通过使用for死循环来实现上面代码的功能,具体代码如下:

#include <stdio.h>
int main()
{
    int i = 1;
    for (;;)
    {
        if (i >= 10)
            break;
        printf("%d ", i);
        i++;
    }
    return 0;
}

break会在下面解释,所以都不在此处进行解释。

2.while循环

while循环的基本语句如下:

定义变量并初始化;
while(判断)
{
    循环语句;
}

这种循环就比较简单,判断为真就执行,不为真就直接跳出,看起来是不是也很简单,下面我们来看具体的代码是怎么写的,如下:

#inlcude <stdio.h>
int main()
{
	int i = 0;
	while (i < 3)
	{
		printf("%d ", i);
		i++;
	}
	return 0;
}

其实在我看来while就是将for循环进行了拆分,但执行逻辑还是和for循环一样的,while是将for函数中的最后的一个参数放到循环语句中的最后一条语句,如果不加这一条语句就会变成死循环。运行结果如下:

3.do-while循环

do-while循环的结构如下:

do
{
    循环语句;
}while(判断);

for和while都是先判断,如果成立就执行循环语句,如果不满足就跳出;而do-while是先执行循环语句在判断,如果为真继续执行循环语句,不为真就跳出。示例代码如下:

#include <stdio.h>
int main()
{
	int i = 0;
	do
	{
		printf("%d ", i);
		i++;
	} while (i < 2 );
	return 0;
}

一般do-while使用在循环体至少要执行一次的场景下,所以如果不加 i++ 也会变成死循环,运行结果如下:

在循环执行的过程中,如果某些状况发生了,需要提前结束就需要使用break和continue这两个关键字

4.break语句

break语句是永久的终止循环,只要执行break语句就会跳出当前的循环,看代码:

#include <stdio.h>
int main()
{
    int i = 1;
    for (;i<10;i++)
    {
        if (i == 7)
            break;
        printf("%d ", i);
        
    }
    return 0;
}

打印了1,2,3,4,5,6后,当i=7时,执行break跳出循环,不在打印,注意:如果时循环嵌套的话是跳出当前循环,最后的运行结果如下:

5.continue语句

continue是跳过continue后面的代码,继续执行下一次循环的判断,在for和while中有所差异.

5.1 在for中的continue代码如下:

#include <stdio.h>
int main()
{
    int i = 1;
    for (;i<10;i++)
    {
        if (i == 7)
            continue;
        printf("%d ", i);
    }
    return 0;
}

当i=7后会跳过后面的代码,但是会回到变量的调整,运行结果如下:

5.2在while中的continue代码如下:

#include <stdio.h>
int main()
{
    int i = 1;
    while(i<10)
    {
        if (i == 5)
            continue;
        printf("%d ", i);
        i++;
    }
    return 0;
}
当 i 等于5后,就执行 continue,直接跳过continue后的代码,去while判断的地方,因为跳过了i++所以程序会进入死循环,运行结果如下:

后面的 | 就表示程序进入的死循环。

  • 21
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值