春风吹又生.c 2022-11-20 10:16 采纳率: 54.8%
浏览 1

有人能解释一下每个for循环是控制什么的吗?以及for循环是怎么循环的?

for循环是怎么样循环的,被它搞蒙了,不知道它怎么做循环的?有哪位解答一下。

img

  • 写回答

1条回答 默认 最新

  • 黛琳ghz 2022年度博客之星前端领域TOP 8 2022-11-20 10:39
    关注

    for 循环语句的一般形式为:

    for (表达式1; 表达式2; 表达式3)
    {
            语句;
    }
    
    

    首先要强调两点:

    1. 表达式1、表达式2和表达式3之间是用分号;隔开的,千万不要写成逗号。

    2. for(表达式1;表达式2;表达式3)的后面千万不要加分号,很多新手都会犯这种错误——会情不自禁地在后面加分号。

    因为 for 循环只能控制到其后的一条语句,而在C语言中分号也是一个语句——空语句。所以如果在后面加个分号,那么 for 循环就只能控制到这个分号,下面大括号里面的语句就不属于 for 循环了。

    下面来看看它的执行过程:

    1. 求解表达式1。
    2. 求解表达式2。若其值为真,则执行 for 语句中指定的内嵌语句,然后执行第3步;若表达式2值为假,则结束循环,转到第5步。
    3. 求解表达式3。
    4. 转回上面第2步继续执行。
    5. 循环结束,执行 for 语句下面的语句。

    从这个执行过程中可以看出,“表达式1”只执行一次,循环是在“表达式2”“表达式3”和“内嵌语句”之间进行的。

    for语句最简单的形式是:

    for (循环变量赋初值; 循环条件; 循环变量增值)
    {
        语句;
    }
    
    
    

    求 1+2+3+4+…+100 的总和。

    # include <stdio.h>
    int main(void)
    {
        int i;
        int sum = 0;  //sum的英文意思是“总和”
        for (i=1; i<=100; ++i)  //++是自加的意思, ++i相当于i = i + 1
        {
            sum = sum + i;  /*等价于sum += i;但是不建议这么写, 因为sum = sum + i看起来更清楚、更舒服*/
        }
        printf("sum = %d\n", sum);
        return 0;
    }
    
    评论

报告相同问题?

问题事件

  • 创建了问题 11月20日

悬赏问题

  • ¥66 关于川崎机器人调速问题
  • ¥15 winFrom界面无法打开
  • ¥15 crossover21 ARM64版本安装软件问题
  • ¥15 mymetaobjecthandler没有进入
  • ¥15 mmo能不能做客户端怪物
  • ¥15 osm下载到arcgis出错
  • ¥15 Dell g15 每次打开eiq portal后3分钟内自动退出
  • ¥200 使用python编写程序,采用socket方式获取网页实时刷新的数据,能定时print()出来就行。
  • ¥15 matlab如何根据图片中的公式绘制e和v的曲线图
  • ¥15 我想用Python(Django)+Vue搭建一个用户登录界面,但是在运行npm run serve时报错了如何解决?