c语言分支与循环基础

【C语言详解】分支与循环 2021-10-29- 作者:Nico 时间: 2021-10-25 网站地址:https://github.com/sxfinn 目录 文章目录2021-10-29-目录????什么是语句????分支语句(选择结构)????循环语句????goto语句 ????什么是语句 C语句可分为以下五类: 表达式语句 函数调用语句 控制语句 复合语句 空语句 这里介绍的是控制语句。 控制语句用于控制程序的执行流程,以实现特定的功能和结构,它们具有特定的语句定义符组成,C语言有九种控制语句。 分为三类: 分支 阅读详情

if 语句

  1. 语法结构
    if(表达式)
    表达式是判断的核心依据。语句可以是单条指令,也可以是用 {} 包裹的复合语句,用于描述满足条件时的执行动作。

  2. 执行逻辑
    程序先计算括号内表达式的值。
    若结果为真(非0),则立即执行紧跟着的语句。
    若结果为假(0),则直接跳过该分支,继续执行if结构之后的代码。

  3. else
    if 后接判断表达式,若结果为真,执行紧跟着的语句块;若为假,则跳至 else 分支执行。
    这是分支语句的最基础结构,就如同生活中的“如果~否则”。

注意:if ~ else 默认仅能控制紧随其后的一条语句。
如果希望在满足条件时执行多条命令,必须使用 {} 将这些语句包裹起来,形成复合语句。

  1. 嵌套if
    将一个if语句嵌套在 else / if 块中,形成“层层递进”的条件筛选结构。
    常用于处理互斥事件,例如数值正负0判断、成绩等级划分。
    逻辑清晰且高效,可以确保判断的互斥性与唯一性。

  2. 悬空else陷阱
    else 遵循就近匹配原则,它总是绑定到离它最近且未被匹配的if上,而非根据代码的缩进对齐。
    这是初学者最容易产生逻辑误判的地方。

解决方案:无论代码块是否只有一行,都强制添加 {} 来明确代码块的边界,彻底消除悬空else带来的二义性。

关系操作符

  1. 特点
    C语言提供6种基本的关系操作符:> < >= <= == !=。
    用于比较两个值的大小或相等关系。
    关系表达式的运算结果是一个布尔值,在C语言中以整数的形式出现。这些运算符是构建条件判断的基础。

  2. 易错点
    注意区分赋值 = 与等于 ==。
    如果在条件判断中写成 if(x=3),这将会把3赋值给x,且表达式永远为真。
    建议养成常量在左的习惯,若手误写成赋值,程序会直接报错。

C语言不支持 if(i<j<k)这种数学式连续比较写法。
它会被解析成 (i<j)<k。
举例:if(3<4<5),3跟4先比较,结果为真输出1,再拿1跟5比较,结果永远非0。
正确写法应该是 if(i<j && j<k)。

条件操作符 / 三目操作符

  1. 基础说明
    格式:表达式1 ? 表达式2 : 表达式3

用于代码简化。表达式1为条件,条件为真取表达式2,条件为假取表达式3。
本质就是化简版的 if~else 语句。
仅适合简单的二选一逻辑。如果条件判断过于复杂,建议回归 if~else,避免代码可维护性下降。

逻辑操作符

  1. 逻辑取反 !
    单目操作符,非真即假,对操作数的真假状态取反。

  2. 逻辑与 &&
    双目操作符,全真才真。两侧表达式必须同时为真,结果才能为真。只要有任意一侧为假,整体结果即为假。

  3. 逻辑或 ||
    双目运算符,两侧表达式只要有一个为真,结果就为真。只有当两侧同时为假时,结果才为假。

  4. 短路现象
    C语言的逻辑操作符总是先对左侧的表达式求值,再对右边的表达式求值。
    如果左边的表达式已经满足逻辑运算符的判定条件,就不再对右边的表达式求值。

switch~case 语句

  1. 核心规则
    switch后的表达式必须是整形表达式。
    case后的值必须是整形常量表达式,变量不行,浮点数也不行。
    根据表达式的值,执行对应的case分支。找不到匹配的值时,执行default分支。
    case和数字之间必须有空格。

  2. break的作用与穿透现象
    如果没有 break,代码就会继续往下执行其他case,这个现象叫做case穿透。
    case只是一个入口标签,并不是分支的边界。break用来跳出整个switch。

  3. default子句
    当switch表达式的值不匹配任何case时,就会执行default分支。
    default不是必须的,不写则什么都不做。
    case和default没有固定的顺序要求,只要满足实际需求即可。通常把default放到最后,提升代码可读性。
    当default放到中间时,后面如果没有break,同样会发生穿透。

while循环

  1. 与if语句对比
    while 和 if 的语法结构几乎一样。
    区别在于:if只执行一次;while会反复执行,直到条件为假。
    循环体包含多条语句时,需要用 {} 括起来。

死循环警告:while(1)条件永远为真,会造成程序卡死。循环体内必须要有改变条件的语句。

  1. 执行流程
    ① 判断表达式是否为真
    ② 为真,执行循环体
    ③ 回到第一步,再次判断条件
    ④ 为假,跳出循环,结束

关键点:先判断,后执行。条件一开始就为假,则循环一次都不会执行。

【C语言】分支与循环 基础 阅读详情

相关推荐

Python驱动COMSOL自动化:从数据生成到DNN代理模型部署全流程解析

本文详细解析了如何利用Python驱动COMSOL实现全流程自动化,从参数化建模、批量仿真数据生成,到训练深度神经网络(DNN)代理模型并部署应用。该方案通过自动化闭环解放工程师生产力,并利用代理模型实现秒级性能预测,极大提升了多物理场仿真优化与设计探索的效率。

weixin_29041767的博客 215

C语言的分支与循环

详细介绍C语言的分支与循环(适合初学者哦)

2501_91427877的博客 819

基于OFDM的实时图像传输系统MATLAB仿真:MPSK与MQAM调制性能对比与误码率分析

本文详细介绍了基于OFDM的实时图像传输系统在MATLAB中的仿真实现,重点对比了MPSK与MQAM调制方式的性能差异与误码率分析。通过搭建OFDM系统模型,探讨了QPSK和16QAM在不同信道条件下的表现,包括频谱效率、抗噪能力和误码率等关键指标。文章还提供了MATLAB代码示例和实用技巧,帮助读者快速掌握OFDM图像传输系统的核心算法与优化方法。

weixin_29064009的博客 355

【思维导图】C语言—分支与循环

像for循环,while循环,do-while循环,以及各循环的之间使用的区别,在循环里面又涉及break语句,contiune语句,goto语句,最后以我们现有C语言的知识我们还学会了一个关机小程序,这个关机小程序我有详细的一篇博客介绍,同时还有这个思维导图的详细知识博客,都已经贴在下面啦~里面包括 if语句,if-else语句,switch-case语句,语句中同时涉及运算,所以我们又学习了各种操作符,像。上节我们回顾了C语言数据类型与变量,今天我们来回顾。,即分为两大点,分支,循环,

稻草人 2511

项目安全等保测评加固手册

安全等级测评的目的是通过对目标系统在安全技术及管理方面的测评,对目标系统的安全技术状态及安全管理状况做出初步判断,给出目标系统在安全技术及安全管理方面与其相应安全等级保护要求之间的差距。测评结论作为委托方进一步完善系统安全策略及安全技术防护措施依据!!

菜鸟运维升级之路 2417

四足机器人关节电机FOC控制实战:从磁编码器校准到SVPWM调试避坑指南

本文详细解析了四足机器人关节电机FOC控制实战,涵盖磁编码器校准、电流环调试和SVPWM波形优化等关键环节。通过MIT Cheetah案例展示如何解决21倍电气误差问题,并提供相序自动校正、PI参数整定等实用代码片段,帮助工程师避开永磁同步电机(PMSM)控制中的常见陷阱。

weixin_29281915的博客 490

C语言分支与循环

分支:用if处理灵活条件,switch处理多常量匹配,结合关系 / 逻辑运算符构建复杂条件;循环for适合次数确定,while适合次数不确定,do-while适合至少执行一次;实战:通过 “猜数字游戏” 综合运用分支、循环和随机数生成,巩固所学知识。建议多写代码练习(如打印乘法表、计算斐波那契数列),逐步提升逻辑思维能力。

2501_92463563的博客 1206

【CV论文精读】【协同感知综述】Collaborative Perception for Autonomous Driving :Current Status and Future Trend

感知是自动驾驶系统的关键模块之一,近年来取得了很大进展。然而,单个车辆的有限能力导致感知性能提高的瓶颈。为了突破个体感知的局限,协作感知被提出,它使车辆能够共享信息来感知视线和视野之外的环境。本文综述了有前途的协作感知技术的相关工作,包括介绍了基本概念,概括了协作模式,总结了协作感知的关键要素和应用。最后,我们讨论了这一研究领域面临的挑战和问题,并给出了一些潜在的进一步方向。

weixin_44184852的博客 4691

C语言——分支与循环

在本章中,我将为大家详细的介绍分支与循环,方便初学者理解在C语言的学习中,我们可以用if语句和switch语句实现分支结构,用for语句、while语句和do-while语句实现循环语句首先介绍的是分支结构。

m151213的博客 1939

QT控件 参考Qt的PIMPL设计模式实现使用QWidget控件绘制3D饼状图表和3D柱状图表,使用QChartView绘制圆柱体图表

工作中之前遇到了绘制3D饼状图表的需求,通过Qt 实现3维饼状图 一文,成功迅速解决问题,现在闲下来了,之前看QtTreePropertyBrowser库的源代码,就想着学习学习Qt的PIMPL模式,于是就参照PIMPL模式实现通过QWidget控件的paintEvent函数重新绘制3D饼状图表和3D柱状图表统计数据的显示效果, 而使用QChartView绘制圆柱体图表完全是取巧了,为了紧急完成工作采用的方法,实际上使用3D柱状图表显示统计数据更加合理。

... 728

PyTorch深度学习实战(3)——使用PyTorch构建神经网络

PyTorch 是一个用于构建深度神经网络的库,具有灵活性和可扩展性,可以轻松自定义模型。在本节中,我们将使用 PyTorch 库构建神经网络,利用张量对象操作和梯度值计算更新网络权重,并利用 Sequential 类简化网络构建过程,最后还介绍了如何使用 save、load 方法保存和加载模型,以节省模型训练时间。

盼小辉丶的博客 8万+

【C语言复习】分支和循环

对C语言分支(if 、switch)和循环(for 、while、 do while)进行详细讲解介绍

ChiaWei_Lee的博客 1339

EndNote X9 参考文献附录列表 格式调整

EndNote X9 插入参考文献常见问题总结

程序员,他们想的是什么?他们想的永远都是技术,他们崇尚的也永远都是技术。 2571

C语言中的分支和循环

C语言作为一种功能强大且灵活的编程语言之一,其中分支与循环语句是控制其程序流程的核心部分。通过分支语句可以实现条件判断和多路径的选择,而循环语句则用于重复执行其中的某段代码。ifif-else二、C语言中的循环语句forwhiledo-whilebreakcontinue。

wbx99的博客 1286

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

C 语言分支循环语句详解

分支语句(ifswitch)让程序有了 “判断” 能力,循环语句(whilefordo-while)让程序能重复执行任务。它们是 C 语言编程的基础,灵活运用这些语句可以构建复杂而高效的程序逻辑,无论是简单的数值计算还是复杂的业务逻辑处理,都离不开它们。熟练掌握分支循环语句,是成为优秀 C 语言程序员的必经之路。

renjin_zsb的博客 1739

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

C语言分支循环语句简介

目录1.分支语句和循环语句的基本语法2.分支语句基本用法3.循环语句基本用法4.分支循环语句的嵌套 C语⾔是结构化的程序设计语⾔,这⾥的结构指的是顺序结构、选择结构、循环结构,C语⾔是能够实现这三种结构的,其实我们如果仔细分析,我们⽇常所⻅的事情都可以拆分为这三种结构或者这三种结构的组合。有了这三种结构我们就可以用C语言来解决许多问题。分支语句一共有两种分别是 if esle 语句和 switch 语句。循环语句有三种分别是 for 循环、while 循环和 do while 循环。 if语句的

YxxxL_striving的博客 1971

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

【C语言】C语言初步——分支循环语句

本文介绍了C语言中的分支语句和循环语句。分支语句包括if-else和switch语句,if用于条件判断,switch适合多分支情况。循环语句涵盖while、for和do-while三种形式,其中for循环使用最多,do-while至少执行一次循环体。文章还讲解了break和continue关键字的作用:break用于终止循环,continue跳过当前循环。通过打印1-10的代码示例,展示了不同语句的语法特点和使用方法,强调要根据实际需求灵活选择语句结构,培养编程思维。

小年糕的博客 1390

c语言分支循环语句

大家好!今天为大家带来的是有关分支与循环语句的相关内容,希望对您有所帮助。

qiuyunoqy的博客 1771
上一篇: c语言的常见概念和数据类型及变量
下一篇: 一篇文章搞懂DsspSeek Harness
OnceCode
博客等级 码龄103天 20粉丝 6原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值