嵌入式C语言阶段复习——循环语句和分支语句

一、循环语句

(1)for循环

语法结构:

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

示例:

c 复制代码
for (int i = 0; i < 5; i++) {
    printf("%d\n", i);
}

特点:

  • 适用于已知循环次数的场景。
  • 初始化、条件判断和更新可在同一行内完成。
(2)while循环

语法结构:

c 复制代码
while (条件表达式) {
    // 循环体
}

示例:

c 复制代码
int i = 0;
while (i < 5) {
    printf("%d\n", i);
    i++;
}

特点:

  • 先判断条件,再执行循环体。
  • 适用于不确定循环次数但需满足条件时。
(3)do-while循环

语法结构:

c 复制代码
do {
    // 循环体
} while (条件表达式);

示例:

c 复制代码
int i = 0;
do {
    printf("%d\n", i);
    i++;
} while (i < 5);

特点:

  • 先执行循环体,再判断条件。
  • 至少执行一次循环体。

二、分支语句

(1)if语句

基础语法:

c 复制代码
if (条件表达式) {
    // 条件为真时执行
}

示例:

c 复制代码
int a = 10;
if (a > 5) {
    printf("a大于5\n");
}
(2)if-else语句

语法结构:

c 复制代码
if (条件表达式) {
    // 条件为真时执行
} else {
    // 条件为假时执行
}

示例:

c 复制代码
int a = 3;
if (a > 5) {
    printf("a大于5\n");
} else {
    printf("a不大于5\n");
}
(3)else-if链

语法结构:

c 复制代码
if (条件1) {
    // 条件1为真时执行
} else if (条件2) {
    // 条件2为真时执行
} else {
    // 其他情况执行
}

示例:

c 复制代码
int score = 85;
if (score >= 90) {
    printf("优秀\n");
} else if (score >= 60) {
    printf("及格\n");
} else {
    printf("不及格\n");
}
(4)switch语句

语法结构:

c 复制代码
switch (表达式) {
    case 常量1:
        // 执行语句
        break;
    case 常量2:
        // 执行语句
        break;
    default:
        // 默认执行语句
}

示例:

c 复制代码
char grade = 'B';
switch (grade) {
    case 'A':
        printf("优秀\n");
        break;
    case 'B':
        printf("良好\n");
        break;
    default:
        printf("其他\n");
}

特点:

  • 适用于多分支选择。
  • 必须用break终止每个case,否则会继续执行后续case。

三、注意事项

循环语句中需注意循环条件的更新,避免死循环。

分支语句中if和switch的选择取决于分支复杂度 :switch适合离散值,if适合范围判断。

switch的case值必须是整型或字符型常量。

相关推荐
“AI国潮设计-小江”4 小时前
《Python+SDXL实战:用ControlNet精准控制“英歌舞翻糖吐司”构图,附批量生成脚本》
开发语言·人工智能·python·prompt·aigc
程序喵大人4 小时前
【C++入门】编译链接模型 - 01 一个 C++ 程序是怎样变成可执行文件的
开发语言·c++·编译链接模型
sunshine22 girl5 小时前
Java学习七 Java 项目实战1-项目创建和主页面搭建
java·开发语言·学习
菜鸟~noob2336 小时前
【电子战】第三季预告—波武器与电子系统强力毁伤
开发语言·数据库·matlab·电子战
惊讶的猫7 小时前
工具选对之后还不够:商城 Agent 的参数与权限治理
开发语言·python
cmpxr_7 小时前
【MicroPython】如何刷新ESP8266的固件
开发语言·micropython
搭贝7 小时前
上厕所的时间搭好一套系统:AI自动生成实测
开发语言·人工智能·低代码·ai·php·搭贝
智感子8 小时前
智能称重·数据上云:从仪表读数到可追溯的计量凭证
开发语言·php
\光辉岁月/8 小时前
7.javase-面向对象
java·开发语言
weixin_531094698 小时前
heap_4内存管理
java·开发语言·算法