C语言中的流程控制1(分支结构)
昨天我们了解了常用的输入输出函数今天我们来了解C语言中的流程控制。程序默认都是顺序结构从上到下一行一行执行。但现实里很多场景需要做判断这时就要用到分支结构。先说说关系运算符和逻辑运算符这是所有判断的基础。 !这类关系运算结果只有1真和0假。逻辑运算符三个并且、||或者、!取反。这里有个很关键的特性——截断特性。左边条件为假右边代码直接不运行||左边条件为真右边不再运算写代码的时候很容易踩坑。还有三目运算符条件 ? 表达式1 : 表达式2简单的二选一判断可以简化代码。重头戏是if分支语句。最基础的if-else很好理解二选一。进阶有两种写法阶梯分支、嵌套分支。阶梯分支就是if … else if … else适合多种条件依次判断比如划分成绩等级。嵌套分支就是if里面再套一层if适合条件分层判断。举个例子先判断是不是三位数在三位数的前提下再判断是否是水仙花数。这里踩过不少坑else总是和离它最近、没有匹配else的if配对如果不加大括号if只能控制紧跟的一行代码大括号千万不能偷懒漏写。然后学习了switch语句。switch适合某个变量和固定常量匹配的场景。几个硬性规则我们应该记住switch括号内只能是整型不能写小数浮点case后面必须是常量不能放变量break非常关键不加break会发生穿透匹配成功后会持续执行后续所有casedefault是可选分支所有case都不匹配时执行。switch同样支持嵌套case里面可以继续写switch不过日常写代码用得不多。简单总结一下怎么选择分支少量条件判断用if-else多区间连续判断优先阶梯if变量匹配固定常量首选switch。理论看着不难但上手敲代码一堆小bug。比如闰年判断、水仙花数程序经常因为大括号错位、逻辑运算符写错导致结果出错。纸上看懂和键盘敲出来完全是两回事还是得多写练习巩固。

相关新闻

字节跳动高级Android面经:Handler同步屏障、Binder一次拷贝,底层机制你扛得住吗

字节跳动高级Android面经:Handler同步屏障、Binder一次拷贝,底层机制你扛得住吗

中级那篇发出去之后评论区炸了,有人说"源码读过了,底层机制心里没底"。高级岗面试确实不一样——面试官不关心你会不会用API,关心你理不理解Android系统怎么跑起来的。 今天这6道题全是字节高级岗的硬核题,每道都能深聊20分钟以上,面试官会从你的回答判断你的技…

2026/7/26 6:03:35 阅读更多 →
TPS80032中断与USB OTG实战:电源管理芯片的事件处理与连接检测

TPS80032中断与USB OTG实战:电源管理芯片的事件处理与连接检测

1. 项目概述与核心价值在移动设备与嵌入式系统的电源管理单元设计中,如何高效、可靠地处理来自电源、电池和外部接口的异步事件,是决定系统稳定性和用户体验的关键。这不仅仅是写几行中断服务程序那么简单,它涉及到对硬件中断架构的深刻理解、…

2026/7/27 7:28:13 阅读更多 →
git高阶知识: --rebase,变基的理解以及注意事项

git高阶知识: --rebase,变基的理解以及注意事项

变基(–rebase)介绍 有时候你使用 git push origin main:mainGit 拒绝你的推送,正是因为远端仓库(origin/main)包含了你本地没有的新提交(可能是你自己在另一台电脑提交的,也可能是你的同事推送到远端的)。…

2026/7/27 7:28:13 阅读更多 →

最新新闻

C++异常处理核心机制与RAII实践:从基础原理到复杂场景应用

C++异常处理核心机制与RAII实践:从基础原理到复杂场景应用

1. 项目概述:为什么C异常处理是资深工程师的“必修课”?干了这么多年C,从桌面应用到服务器后台,再到嵌入式系统,我越来越觉得,异常处理这块内容,是区分“会写代码”和“能写好代码”的一道分水岭…

2026/7/27 7:27:25 阅读更多 →
Godot游戏开发自动化工作流:Aseprite资源导入与Dodo工具实践

Godot游戏开发自动化工作流:Aseprite资源导入与Dodo工具实践

1. 项目概述:当Godot遇上Dodo,一个高效的游戏开发工作流如果你正在用Godot引擎做游戏,尤其是涉及到2D像素风或者需要频繁处理美术资源,那你可能对“资源导入-调整-测试”这个循环感到头疼。美术同学导出的精灵图(Sprit…

2026/7/27 7:27:25 阅读更多 →
基于YOLOv8与改进HRNet的篮球动作实时分析系统

基于YOLOv8与改进HRNet的篮球动作实时分析系统

1. 系统概述与核心价值篮球运动分析正在经历从传统人工观察向智能化技术转型的关键时期。作为一名长期从事体育科技研发的工程师,我在实际项目中发现传统视频分析存在三个致命缺陷:主观判断误差大、关键帧捕捉不精准、量化指标缺失。这套基于YOLOv8与改进…

2026/7/27 7:27:25 阅读更多 →
Unity 2D射击系统全解析:从输入检测到对象池优化

Unity 2D射击系统全解析:从输入检测到对象池优化

1. 项目概述与核心思路最近在做一个2D横版射击游戏,核心玩法就是控制角色移动和发射子弹。这个功能听起来简单,但真要自己动手从零实现,里面门道还挺多的。不是简单实例化一个预制体就完事了,你得考虑子弹从哪里生成、朝哪个方向飞…

2026/7/27 7:27:25 阅读更多 →
AI原生办公助手:重构工作流,提升团队协作效率

AI原生办公助手:重构工作流,提升团队协作效率

你有没有过这样的经历:周一早上打开电脑,面对满屏的邮件、待办事项和会议邀请,感觉整个人都被工作淹没了?上周我就经历了这样的一天——三个项目同时推进,客户需求反复修改,团队协作信息混乱,整…

2026/7/27 7:27:25 阅读更多 →
【非标自动化】2、认识元器件(光电传感器)

【非标自动化】2、认识元器件(光电传感器)

光电传感器光电传感器是一种利用光线检测物体有无、位置、通过状态或距离的传感器。它通常由以下部分组成:发光器接收器信号处理电路输出电路光电传感器先发出可见光或红外光,再根据光线是否被遮挡、反射或返回,判断目标物体是否存在。可以先…

2026/7/27 7:26:24 阅读更多 →

日新闻

【JAVA毕设源码分享】基于SpringBoot的社区智能垃圾管理系统的设计与实现(程序+文档+代码讲解+一条龙定制)

【JAVA毕设源码分享】基于SpringBoot的社区智能垃圾管理系统的设计与实现(程序+文档+代码讲解+一条龙定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

2026/7/27 0:00:54 阅读更多 →
SPI实战指南:从时钟模式到寄存器配置,解决嵌入式通信难题

SPI实战指南:从时钟模式到寄存器配置,解决嵌入式通信难题

1. 项目概述:从寄存器手册到实战指南 如果你手头有一份类似德州仪器(TI)TMS320x240xA系列DSP的SPI模块技术手册,看着里面密密麻麻的寄存器位定义、时序图和公式,是不是感觉头大?这份资料虽然权威&#xff0…

2026/7/27 0:00:54 阅读更多 →
【JAVA毕设源码分享】基于springboot的水果购物管理系统的设计与实现(程序+文档+代码讲解+一条龙定制)

【JAVA毕设源码分享】基于springboot的水果购物管理系统的设计与实现(程序+文档+代码讲解+一条龙定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

2026/7/27 0:00:54 阅读更多 →

周新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/7/27 4:33:59 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/7/27 6:31:56 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/7/27 4:01:12 阅读更多 →

月新闻