C语言 分支循环语句
1. 概述C语⾔是结构化的程序设计语⾔这⾥的结构指的是顺序结构、选择结构、循环结构实现选择结构常见的语句有if、switch实现循环结构常见的语句有for、while、do while2.if语句2.1 ifif ( 表达式 ) 语句表达式为真非0则执行语句为0则不执行。注一个if 语句仅能控制其下一条语句用大括号 “{ }”将语句扩起来可实现控制多条语句。2.2 elseelse 语句与其配合使用的 if 条件下执行。注else 总是和同一作用域内、前面最近且未配对的 if匹配和代码缩进无关2.3 多分⽀在 if else 语句中 else可以与另⼀个if语句连⽤构成多分⽀。2.4 嵌套if语句可以通过嵌套实现多层判断#include stdio.h int main() { int age 5; int height 110; if (age 6 age 0) { if (height 120 height 0) { printf(儿童免票); } else { printf(年龄达标但身高超标需要购票); } } else { printf(年龄超过6岁正常购票); } return 0; }3 关系运算符C 语⾔⽤于⽐较的表达式使⽤的运算符关系表达式通常返回0或1表⽰真假。两个注意1.相等运算符与赋值运算符 是两个不⼀样的运算符可以将变量写在等号的右边。if (2 x)2.多个关系运算符不宜连用if(i j k) ...假设 i, j, k 分别等于 10、23i j 为假00k为真。执行下一个语句。4.条件操作符exp1 ? exp2 : exp3exp1为条件条件为真执行exp2为假执行exp3。注条件操作符也能嵌套使⽤5.逻辑操作符 , || , 与 一假为假全真为真|| 或 一真为真全假为假取反字面意思改变表达式真假短路逻辑运算符先对左侧的表达式求值再对右边的表达式求值满足即停。if(month 3 month 5)例month 2左表达式为假一假为假右表达式不执行6.switch 语句if语句在特定情况下的简化版本switch (表达式) { case value1: 语句1 case value2: 语句2 .. default: statement }switch 后的表达式 必须是整型表达式case 后的值必须是整形常量表达式对号入座假设casevalue1: 1 当表达式结果为整型1时执行casevalue1: 执行其以下的语句遇break跳出注case和后边的数字之间有空格6.1 switch语句中的default类似于elseswitch后的表达式中的值无法匹配代码中的case语句时执行。7.while循环while(表达式) 语句; while(表达式) { 语句;//如果循环体想包含更多的语句可以加上⼤ 括号 }先判断条件while括号内的表达式是否成立满足则执行语句再重新判断直到条件为假。8.for循环for(表达式1; 表达式2; 表达式3) 语句; //形式2 for(表达式1; 表达式2; 表达式3) { 语句;//如果循环体想包含更多的语句可以加上⼤括号 }表达式1 循环变量的初始化只被执⾏1次表达式2 循环结束条件的判断表达式3 循环变量的调整先初始化再判断条件满足则执行语句再调整再判断直到表达式为假。与while类似for循环把初始化判断调整打包在一起了可以理解成whie的简写9. do-while 循环do 语句; while(表达式);先do做再判断。至少执行一次10.break和continue语句break 的作⽤是跳出单层循环continue的作⽤是跳过本次循环中continue后边的代码其中continue在不同语句中差异较大10.1 continue在不同循环语句中的区别1.在 while 循环中 continue 是跳到循环条件判断部分在do while 循环中类似#include stdio.h int main() { int i 1; while(i 10) { if(i 5) continue; //当i等于5后就执⾏continue直接跳过continue的代码去循环的判断的地⽅ //因为这⾥跳过了i i1所以i⼀直为5程序陷⼊和死循环 printf(%d , i); i i 1; } return 0; }2.在 for 循环中 continue 是跳到循环的调整部分#include stdio.h int main() { int i 1; for(i 1; i 10; i) { if(i 5) continue;//这⾥continue跳过了后边的打印来到了i的调整部分 printf(%d , i); } return 0; }结果 1 2 3 4 6 7 8 9 1011. 循环的嵌套#include stdio.h int main() { int i 0; for(i 200; i 300; i) { //判断i是否为素数 int j 0; int flag 1;//假设i是素数 for(j 2; j i; j) { if(i % j 0) { flag 0; break; } } if(flag 1) printf(%d , i); } return 0; }12.goto语句在同一个函数内跳转到标志处可用于快速跳出多层循环#include stdio.h int main() { printf(hehe\n); goto next; printf(haha\n); next: printf(跳过了haha的打印\n); return 0; }

相关新闻

Unity URP相机与Volume系统:动态后处理实现电影级游戏镜头叙事

Unity URP相机与Volume系统:动态后处理实现电影级游戏镜头叙事

1. 项目概述:用镜头语言为游戏注入灵魂在游戏开发中,我们常常花费大量精力打磨角色动作、场景美术和剧情脚本,却容易忽略一个同样至关重要的叙事工具——相机。它不仅仅是玩家观察世界的“眼睛”,更是导演手中的“画笔”&#xff…

2026/10/18 3:37:57 阅读更多 →
AI编程新范式:从云端调用到本地深度集成实战指南

AI编程新范式:从云端调用到本地深度集成实战指南

最近在 AI 和开发者工具圈,几个看似独立的事件正悄然改变着我们的工作流:贾扬清的新公司 Lepton AI 发布了 RSI 框架,而 Cursor 编辑器则通过一系列 GPU 优化,让本地 AI 编程体验变得前所未有的流畅。很多开发者可能只是把它们当作…

2026/10/18 3:37:58 阅读更多 →
5分钟掌握BOTW存档编辑器:塞尔达传说旷野之息存档修改完全指南

5分钟掌握BOTW存档编辑器:塞尔达传说旷野之息存档修改完全指南

5分钟掌握BOTW存档编辑器:塞尔达传说旷野之息存档修改完全指南 【免费下载链接】BOTW-Save-Editor-GUI A Work in Progress Save Editor for BOTW 项目地址: https://gitcode.com/gh_mirrors/bo/BOTW-Save-Editor-GUI 你是否曾经在《塞尔达传说:旷…

2026/10/20 9:11:10 阅读更多 →

最新新闻

knowledge-work-plugins插件化架构解析与知识工作流实践

knowledge-work-plugins插件化架构解析与知识工作流实践

1. 这个插件仓库到底在解决什么问题第一次看到knowledge-work-plugins这个标题,我脑子里蹦出来的第一个念头是:又是一个“大而全”的知识管理工具集?毕竟市面上挂着“knowledge”名头的项目,十个里有八个最后都做成了笔记软件或者…

2026/10/21 4:38:50 阅读更多 →
机器人导航地图底座:栅格数据、坐标变换与可视化实践

机器人导航地图底座:栅格数据、坐标变换与可视化实践

lingbot-map是给移动机器人平台lingbot做的地图底座。很多朋友一开始不重视地图模块,觉得SLAM建完图、能画出来就行,结果一到定位、避障、可视化阶段就卡住,不是坐标对不上,就是数据格式不统一。lingbot-map解决的正是这个问题&am…

2026/10/21 4:38:50 阅读更多 →
TCP传输层核心机制与开发避坑:从握手到粘包

TCP传输层核心机制与开发避坑:从握手到粘包

TCP/IP 协议栈学到传输层,基本就到了劝退区和加分区的分水岭。上一篇把分层模型、地址解析、路由这些地基盘完,剩下的硬骨头就是传输层,而传输层的主角就是 TCP。HTTP、HTTPS,还有日常接口调用、数据库连接,底座几乎都…

2026/10/21 4:38:50 阅读更多 →
vcamp110.dll缺失怎么修复?DLL错误排查与解决全指南

vcamp110.dll缺失怎么修复?DLL错误排查与解决全指南

最近后台收到好几条类似的求助,都是同一个画面:双击软件图标,屏幕中央弹出一个带红色叉号的对话框,提示“找不到vcamp110.dll”或者“vcamp110.dll已损坏”,点确定之后软件直接闪退,怎么重装都没用。这种问…

2026/10/21 4:38:50 阅读更多 →
知识工作插件仓库实战:模块化架构与自动化工作流搭建指南

知识工作插件仓库实战:模块化架构与自动化工作流搭建指南

1. 这个插件仓库到底解决了什么问题第一次看到knowledge-work-plugins这个名字,我脑子里冒出来的第一个念头是:又是一个"大而全"的插件集合?但真正把仓库拉下来翻了一遍之后,我发现它的定位其实非常克制——它瞄准的是知…

2026/10/21 4:38:50 阅读更多 →
MATLAB版SMOTE实战:从K近邻到合成样本的完整拆解与避坑指南

MATLAB版SMOTE实战:从K近邻到合成样本的完整拆解与避坑指南

简介:这份资源是面向机器学习初学者与数据挖掘工程师的SMOTE算法MATLAB实现包,用于解决分类任务中少数类样本不足导致的模型偏置问题。压缩包共5个文件,以2个.m脚本为核心,分别承载SMOTE主算法与测试调用逻辑,另附LICE…

2026/10/21 4:37:50 阅读更多 →

日新闻

统一内存+量化:锐龙AI Max PRO 400如何本地跑320B大模型

统一内存+量化:锐龙AI Max PRO 400如何本地跑320B大模型

这段时间硬件圈和AI圈都在传一个事:AMD锐龙AI Max PRO 400系列把最高192GB统一内存搬进了PC形态的产品里,按宣传口径,本地跑320B参数的大家伙不再是纸面概念。我第一反应倒不是“内存真大”,而是这话背后的含金量——它把过去只能…

2026/10/21 0:00:11 阅读更多 →
AI助手深度使用体验:对话质量、长文本处理与指令遵循如何留住用户

AI助手深度使用体验:对话质量、长文本处理与指令遵循如何留住用户

1. 从“封号重开”这个行为说起:用户到底在追求什么“封号重开”这四个字,放在任何产品语境里都带着一股决绝的味道。一个账号从零开始积累使用记录、调教偏好、沉淀工作流,背后是大量的时间和精力成本。正常情况下,没有人愿意主动…

2026/10/21 0:00:11 阅读更多 →
ROS中YOLOv3工程落地:通信同步、坐标变换与性能调优

ROS中YOLOv3工程落地:通信同步、坐标变换与性能调优

1. 为什么在ROS里硬刚YOLOv3不是“炫技”,而是工程落地的必经之路我第一次在某高校机器人实验室看到那台搭载Jetson TX2的移动底盘原地打转、反复识别错垃圾桶时,就意识到:单纯跑通darknet_ros demo和真正让YOLOv3在ROS里“干活”&#xff0c…

2026/10/21 0:00:11 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/20 10:02:13 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/20 20:43:59 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/21 4:27:17 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 10:02:08 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 9:50:17 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 9:50:45 阅读更多 →