当前位置: 首页 > news >正文

c语言中的for循环

在C语言中,for循环是控制结构之一,用于多次执行一段代码。其具体用法如下:

语法

for (初始化表达式; 条件表达式; 更新表达式) {// 循环体
}

参数说明

  1. 初始化表达式:在循环开始前执行一次,用于初始化循环控制变量。
  2. 条件表达式:每次循环开始时计算。如果结果为真(非零),则执行循环体;如果结果为假(零),则终止循环。
  3. 更新表达式:每次循环结束时执行,用于更新循环控制变量。

示例

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

输出结果:

i = 0
i = 1
i = 2
i = 3
i = 4
i = 5
i = 6
i = 7
i = 8
i = 9
嵌套循环
#include <stdio.h>int main() {int i, j;for (i = 0; i < 3; i++) {for (j = 0; j < 3; j++) {printf("i = %d, j = %d\n", i, j);}}return 0;
}

输出结果:

i = 0, j = 0
i = 0, j = 1
i = 0, j = 2
i = 1, j = 0
i = 1, j = 1
i = 1, j = 2
i = 2, j = 0
i = 2, j = 1
i = 2, j = 2
变形示例
  1. 省略初始化表达式

    int i = 0;
    for (; i < 10; i++) {printf("i = %d\n", i);
    }
    
  2. 省略条件表达式(构成无限循环,需在循环体内使用break语句终止循环):

    int i;
    for (i = 0; ; i++) {if (i >= 10) break;printf("i = %d\n", i);
    }
    
  3. 省略更新表达式(在循环体内手动更新):

    int i;
    for (i = 0; i < 10; ) {printf("i = %d\n", i);i++;
    }
    
  4. 省略所有表达式(构成无限循环,需在循环体内使用break语句终止循环):

    int i = 0;
    for (;;) {if (i >= 10) break;printf("i = %d\n", i);i++;
    }
    

注意事项

  • for循环中的三个表达式可以任意组合,但必须用分号隔开,即使某个表达式省略也要保留分号。
  • 在某些情况下,for循环可以被whiledo-while循环替代,选择哪种循环结构取决于具体的需求和代码的可读性。

通过上述示例和说明,希望能帮助你更好地理解C语言中的for循环用法。如果有进一步的问题或需要更多示例,请随时告知。

http://www.lryc.cn/news/385425.html

相关文章:

  • 大模型微调(finetune)方法
  • Bootstrap 5 卡片
  • 【ONLYOFFICE 8.1】的安装与使用——功能全面的 PDF 编辑器、幻灯片版式、优化电子表格的协作
  • 「51媒体」浙江地区媒体邀约
  • 2-18 基于matlab的关于联合对角化盲源分离算法的二阶盲识别(SOBI)算法
  • C++中常用的标志库
  • 近期计算机领域的热点技术
  • HarmonyOS Next 系列之可移动悬浮按钮实现(六)
  • 如何获得更高质量的回答-chatgpt
  • ASP.NET Core 6.0 使用 Log4Net 和 Nlog日志中间件
  • 使用Spring Boot实现与ActiveMQ的消息队列集成
  • 深度学习 - Transformer 组成详解
  • ONLYOFFICE 8.1编辑器桌面应用程序来袭——在线全面测评
  • 《Windows API每日一练》6.4 程序测试
  • [C#]基于opencvsharp实现15关键点人体姿态估计
  • lambda-map.merge
  • pppd 返回错误码 含义
  • XML 技术
  • 基于RabbitMQ的异步消息传递:发送与消费
  • Golang | Leetcode Golang题解之第201题数字范围按位与
  • 竞争性谈判中,主要谈判什么内容?(电子化招采系统)
  • youlai-boot项目的学习(4) 前后端本地部署
  • Redis 5 种基础数据结构?
  • 搜维尔科技:SenseGlove Nova2国内首款支持手掌心力回馈手套开售
  • Java中的函数式编程入门
  • idea 自动生成序列化数字
  • Java数据结构算法(最长递增序列二分查找)
  • 编译VTK静态库
  • Python中的@property装饰器:深入理解与应用
  • springCloudalibabaAI孵化(一)