【寒假自学C语言】 --4 三类循环语句总结及对比

发布于:2023-01-24 ⋅ 阅读:(9) ⋅ 点赞:(0) ⋅ 评论:(0)

目录

前言:

一、while

     1、示例:

     2、流程图:

     3、特点:

二、for循环 

     1、示例:

     2、流程图:

     3、注意事项:

    1.不可在for循环内修改循环变量,否则程序失去控制。

    2.建议for循环语句控制变量取值采用”前闭合后开区间“的写法。

     4、特点:

三、do...whlie循环

     1、示例:

     2、流程图

     3、特点:

四、总结


前言:

在编写程序时候,经常会用到多次重复语句,所以我们需要引用简单易懂的循环语句,来方便我们书写复杂程序,下文只是对于三种循环简单介绍,下篇文章会根据此次文章进行进一步的进阶介绍。


一、while

1、示例:

       用while循环打印1-9数字。

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

2、流程图:

然后我们来逐步分析一下while循环的工作原理以及有哪些必要条件

 通过图表以及代码对应关系来看,这样while循环的工作原理就会更加的清晰。

3、特点:

先判断,在执行,有可能一次都不执行。


二、for循环 

1、示例

用我以前写过的一个for循环来讲解

     代码如下:

#include<stdio.h>
int main()
{
    int  i, a, N;
    a = 1;
    scanf_s("%d,", &N);
    for (i = 1; i < N; i++)
    {
        a = (a + 1) * 2;
    }
    printf("%d", a);
    return 0;
}

那我们进一步用流程图来分析一下for循环的工作原理和重要组成部分。

2、流程图:

3、注意事项:

    1.不可在for循环内修改循环变量,否则程序失去控制。

例如

正常情况下:打印0~9数字

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

编译结果如下

错误情况:直接在for函数体内进行赋值,则会失去控制执行错误,造成死循环

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

   编译结果如下所示:

2.建议for循环语句控制变量取值采用”前闭合后开区间“的写法。

   这样做法看似多次一举,其实在项目较为复杂时候可以尽快判断出循环次数和其他重要信息。

4、特点:

因为他具有直观、控制能力强的特点,所以使用更加频繁。


三、do...whlie循环

是要先走一遍do循环体内的代码,然后在与while里面的条件进行判断,成立循环就一直继续下去,不成立就跳出循环。

1、示例:

打印0~9数字

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

注意事项:

do下面执行语句必须加{}

否则只会执行离它最近的一条语句

2、流程图

表示:

 3、特点:

循环至少执行一次,使用场景有限。

四、总结

对于不同循环语句有着不同的应用场景,各个循环语句都具有各自特点,我们应该灵活运用,取长避短,合理选择并加以运用语句可以让编写程序事半功倍。