嵌入式C语言---三大循环理解

本文详细解析了for循环、while循环及dowhile循环的特点与使用方法,并通过累加算法实例对比了这三种循环语句的不同之处,帮助读者深入理解循环控制结构。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、用法
1、for循环:

for (循环控制变量初始化; 循环终止条件; 循环控制变量增量)
{
 循环体
}
int i;
for(i = 0, sum =0; i < 10; i++)
{
 sum += i;
}
for循环执行步骤:
1、先执行虚幻控制变量初始化
2、执行循环终止条件,如果为真,执行循环体,进入第3步;如果为假,退出循环。
3、执行循环体。
4、执行循环控制变量增量,转入第2步。

2、do while循环

控制变量初始化
do
{
 循环体
}while(循环终止条件);

i = 1;
sum = 0;    // 初始化条件
do
{
 printf("i = %d.\n", i);
 sum += i;
 i += 2;    // 增量,循环体的一部分
}while (i < 100);   // 终止条件


do while循环的执行步骤:
0、首先是循环初始化。这一部分其实不属于do while循环本身。
1、执行循环体(循环控制变量的增量是循环体的一部分)
2、判断终止条件。若成立,则转入1;若不成立则退出

3、while循环
循环控制变量初始化
while(终止条件)
{
 循环体;
}

i = 1;
sum = 0;    // 循环初始化
while (i < 100)    // 终止条件
{
 printf("i = %d.\n", i);
 sum += i;   // 循环体
 i += 2;    // 循环控制增量,属于循环体的一部分
}

while循环的执行步骤:
0、首先是循环初始化。这一部分其实不属于while循环本身。
1、先判断终止条件是否满足。如果是真,则进入第2步;否则直接退出。
2、执行循环体,然后转入第1步
常用于控制程序

二、应用累加(自然数)算法
int f1(int n)
{
    int ret = 0;
    int i = 0;
   
    for(i=1; i<=n; i++)
    {
        ret += i;
    }
   
    return ret;
}

int f2(int n)
{
    int ret = 0;
   
    while( (n > 0) && (ret += n--) );
   
    return ret;
}

int f3(int n)
{
    int ret = 0;
   
    if( n > 0 )
    {
        do
        {
            ret += n--;
        }while( n );
    }
   
    return ret;
}

通过对比累加算法中三种循环语句中的写法,自然体会到三者用法。

三、总结
总结:不管哪种循环结构,都不能缺少一些要素:
循环控制条件初始化,终止条件,循环控制变量增量,循环体。
不同的循环方式(for和while和do while)都有这些,只是格式不同,表现形式不同,放的地

方不同,可读性不同,看起来和设计起来难度不同。

while循环和do while循环哪里不同?while循环是先判断后执行,do while循环是先执行后判

断等循环开始转了之后,其实是一样的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值