嵌入式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值必须是整型或字符型常量。

相关推荐
AA陈超6 分钟前
CN-Language中文编程语言:第03篇-语法基础
开发语言·cn·cn中文编程语言·cn-language
熊猫钓鱼>_>7 分钟前
CMP for OpenHarmony 实战:Coil 图片加载库鸿蒙化使用心得
运维·服务器·开发语言·华为·ai编程·harmonyos·openharmony
fengci.14 分钟前
CTF2刷题记录(困难部分)
android·开发语言·前端·学习·php
老王IT17 分钟前
Rust开发环境搭建教程
开发语言·后端·rust
程序猿乐锅41 分钟前
Streamlit 实现 AI 聊天 Agent:角色提示词、流式输出与会话管理
开发语言·前端·笔记·后端·python·学习
小南知更鸟1 小时前
【2026 年 Python 包管理工具选型:从“工具崇拜”回到工程约束】
开发语言·python
努力努力再努力wz1 小时前
【Lua入门系列】从动态类型到变量作用域:彻底理解 local、全局变量与跨文件访问
开发语言·junit·lua
程序猿乐锅1 小时前
面向对象练习:图书借阅系统里的封装、抽象类与多态
开发语言·前端·数据库·后端·python·学习·1024程序员节
沐晓时光1 小时前
C语言入门,深入理解指针(6)
c语言·开发语言
略略略咯咯2 小时前
33333
开发语言·windows·python