【快速上手C语言】第四章:控制结构——掌控程序的执行流程

本文主要是介绍【快速上手C语言】第四章:控制结构——掌控程序的执行流程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

        在编写C语言程序时,控制结构用于管理程序的执行流程。通过条件判断、循环和跳转语句,程序可以根据不同的条件执行不同的代码块,从而实现复杂的逻辑。

条件语句(if、else、switch)

        条件语句用于根据表达式的真假来决定是否执行某一代码块。C语言中主要的条件语句包括if-elseswitch语句。

        if-else 语句:根据条件表达式的真假来选择执行哪个代码块。

#include <stdio.h>int main() {int num = 10;if (num > 0) {printf("num 是正数\n");} else if (num < 0) {printf("num 是负数\n");} else {printf("num 是零\n");}return 0;
}
// 运行结果:
// num 是正数

switch 语句:用于多分支选择,通常用于替代复杂的if-else链。

#include <stdio.h>int main() {int day = 3;switch (day) {case 1:printf("今天是星期一\n");break;case 2:printf("今天是星期二\n");break;case 3:printf("今天是星期三\n");break;default:printf("不是有效的星期数\n");}return 0;
}
// 运行结果:
// 今天是星期三

        在switch语句中,每个case表示一种可能的情况,break用于跳出switch语句,default表示所有case都不匹配时执行的代码。

循环语句(for、while、do-while)

        循环语句允许重复执行某段代码,直到满足指定条件。C语言中有三种主要的循环结构:forwhiledo-while

        for 循环:适用于已知循环次数的情况。

#include <stdio.h>int main() {for (int i = 0; i < 5; i++) {printf("这是第 %d 次循环\n", i+1);}return 0;
}
// 运行结果:
// 这是第 1 次循环
// 这是第 2 次循环
// 这是第 3 次循环
// 这是第 4 次循环
// 这是第 5 次循环

while 循环:适用于条件控制的循环,条件为真时执行循环体。

#include <stdio.h>int main() {int count = 0;while (count < 5) {printf("count 现在是 %d\n", count);count++;}return 0;
}
// 运行结果:
// count 现在是 0
// count 现在是 1
// count 现在是 2
// count 现在是 3
// count 现在是 4

do-while 循环:至少执行一次循环体,之后在条件为真时继续执行。

#include <stdio.h>int main() {int count = 0;do {printf("count 现在是 %d\n", count);count++;} while (count < 5);return 0;
}
// 运行结果:
// count 现在是 0
// count 现在是 1
// count 现在是 2
// count 现在是 3
// count 现在是 4

do-while循环与while循环的区别在于,无论条件是否为真,do-while循环都会执行一次循环体。

跳转语句(break、continue、return)

        跳转语句用于改变循环的正常执行流程。C语言中常见的跳转语句包括breakcontinuereturn

        break:立即终止循环或switch语句,跳转到循环或switch后的下一条语句。

#include <stdio.h>int main() {for (int i = 0; i < 10; i++) {if (i == 5) {break;  // 当i等于5时,跳出循环}printf("i: %d\n", i);}return 0;
}
// 运行结果:
// i: 0
// i: 1
// i: 2
// i: 3
// i: 4

continue:跳过本次循环的剩余部分,立即进入下一次循环迭代。

#include <stdio.h>int main() {for (int i = 0; i < 10; i++) {if (i % 2 == 0) {continue;  // 跳过偶数的打印}printf("i: %d\n", i);}return 0;
}
// 运行结果:
// i: 1
// i: 3
// i: 5
// i: 7
// i: 9

return:用于结束函数的执行,并可选地返回一个值。

#include <stdio.h>int checkEven(int num) {if (num % 2 == 0) {return 1;  // 返回1表示偶数}return 0;  // 返回0表示奇数
}int main() {int result = checkEven(4);if (result) {printf("4 是偶数\n");} else {printf("4 是奇数\n");}return 0;
}
// 运行结果:
// 4 是偶数

return语句不仅结束函数的执行,还可以将一个值返回给调用该函数的地方。

总结:

        本章介绍了C语言中控制程序执行流程的几种重要结构:条件语句、循环语句以及跳转语句。掌握这些控制结构能够帮助你编写具有灵活逻辑和高效执行的程序。

这篇关于【快速上手C语言】第四章:控制结构——掌控程序的执行流程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1090802

相关文章

使用SQL语言查询多个Excel表格的操作方法

《使用SQL语言查询多个Excel表格的操作方法》本文介绍了如何使用SQL语言查询多个Excel表格,通过将所有Excel表格放入一个.xlsx文件中,并使用pandas和pandasql库进行读取和... 目录如何用SQL语言查询多个Excel表格如何使用sql查询excel内容1. 简介2. 实现思路3

Go语言实现将中文转化为拼音功能

《Go语言实现将中文转化为拼音功能》这篇文章主要为大家详细介绍了Go语言中如何实现将中文转化为拼音功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 有这么一个需求:新用户入职 创建一系列账号比较麻烦,打算通过接口传入姓名进行初始化。想把姓名转化成拼音。因为有些账号即需要中文也需要英

Go语言使用Buffer实现高性能处理字节和字符

《Go语言使用Buffer实现高性能处理字节和字符》在Go中,bytes.Buffer是一个非常高效的类型,用于处理字节数据的读写操作,本文将详细介绍一下如何使用Buffer实现高性能处理字节和... 目录1. bytes.Buffer 的基本用法1.1. 创建和初始化 Buffer1.2. 使用 Writ

深入理解C语言的void*

《深入理解C语言的void*》本文主要介绍了C语言的void*,包括它的任意性、编译器对void*的类型检查以及需要显式类型转换的规则,具有一定的参考价值,感兴趣的可以了解一下... 目录一、void* 的类型任意性二、编译器对 void* 的类型检查三、需要显式类型转换占用的字节四、总结一、void* 的

Python实现NLP的完整流程介绍

《Python实现NLP的完整流程介绍》这篇文章主要为大家详细介绍了Python实现NLP的完整流程,文中的示例代码讲解详细,具有一定的借鉴价值,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 编程安装和导入必要的库2. 文本数据准备3. 文本预处理3.1 小写化3.2 分词(Tokenizatio

shell脚本快速检查192.168.1网段ip是否在用的方法

《shell脚本快速检查192.168.1网段ip是否在用的方法》该Shell脚本通过并发ping命令检查192.168.1网段中哪些IP地址正在使用,脚本定义了网络段、超时时间和并行扫描数量,并使用... 目录脚本:检查 192.168.1 网段 IP 是否在用脚本说明使用方法示例输出优化建议总结检查 1

SpringBoot使用minio进行文件管理的流程步骤

《SpringBoot使用minio进行文件管理的流程步骤》MinIO是一个高性能的对象存储系统,兼容AmazonS3API,该软件设计用于处理非结构化数据,如图片、视频、日志文件以及备份数据等,本文... 目录一、拉取minio镜像二、创建配置文件和上传文件的目录三、启动容器四、浏览器登录 minio五、

Rust中的Option枚举快速入门教程

《Rust中的Option枚举快速入门教程》Rust中的Option枚举用于表示可能不存在的值,提供了多种方法来处理这些值,避免了空指针异常,文章介绍了Option的定义、常见方法、使用场景以及注意事... 目录引言Option介绍Option的常见方法Option使用场景场景一:函数返回可能不存在的值场景

C语言线程池的常见实现方式详解

《C语言线程池的常见实现方式详解》本文介绍了如何使用C语言实现一个基本的线程池,线程池的实现包括工作线程、任务队列、任务调度、线程池的初始化、任务添加、销毁等步骤,感兴趣的朋友跟随小编一起看看吧... 目录1. 线程池的基本结构2. 线程池的实现步骤3. 线程池的核心数据结构4. 线程池的详细实现4.1 初

如何使用 Bash 脚本中的time命令来统计命令执行时间(中英双语)

《如何使用Bash脚本中的time命令来统计命令执行时间(中英双语)》本文介绍了如何在Bash脚本中使用`time`命令来测量命令执行时间,包括`real`、`user`和`sys`三个时间指标,... 使用 Bash 脚本中的 time 命令来统计命令执行时间在日常的开发和运维过程中,性能监控和优化是不