尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
C语言————分支与循环
C语言的语句分类有空语句 表达式语句复合语句控制语句。控制语句顺序结构选择结构循环结构一.选择结构if语句switch语句 循环结构for语句while语句1.if语句if(表达式)1if语句中的表达式为真的话就执行if语句若表示式为假的话不执行。2if语句后面默认式一条语句超过一条语句要加个大括号。30为假非0为真(4) “”为赋值“”为判断相等5else悬空问题如果有多个if 和 else 那么else总是跟最接近的if匹配。#inlclude stdio.h int main() { int i1; if(i1) pritnf(%d,i); return 0; }以上代码结果是12.条件操作符表达式1 表达式2 表达式31表达式1为真 则执行表达式2。若表达式1为假 则执行表达式3。#inlcude stdio.h int main() { int a0; int b0; if(a5) b(a5?3:-3); b3; else b-3; }以上代码中的左右代码意思以及结果式一样的。3.if语句练习1输入一个整数如果是正数在判断是奇数还是偶数并输出如果不是正数则输出非正数。#include stdio.h int main() { int num0; scanf(%d,num); if(num0) { if(num % 2 1) printf(奇数\n); else printf(偶数\n); } else printf(非正数\n); return 0; }上面代码输入2 会输出偶数输入3会输出;奇数3.switch语句switch(表达式){case 值case 值}1switch语句是一种特殊形式的if-else结构用于判断条件有多个结果的情况。2switch后的表达式必须是整型表达式3case后的值必须是整型常量表达式。4case决定的是入口break决定的是出口break用于跳出switch语句。5所以case不匹配的时候看default语句写的啥。4.switch语句练习1计算除3之后的余数#define _CRT_SECURE_NO_WARNINGS #include stdio.h int main() { int num 0; scanf(%d, num); switch (num % 3) { case 0: printf(余数是0\n); case 1: printf(余数是1\n); case 2: printf(余数是2\n); break; } return 0; }上面代码输入5 输出2 输入7 输出1。5.while循环while(表达式)1while里面的表达式是用于循环的判断。2表达式结果 非0-视为真执行大括号循环题表达式结果为 0-视为假直接跳出while循环。3break会立刻终止 当前while循环直接跳到到循环后面代码。#include stdio.h int main() { int i 0; while (i 10) { if (i 5) break; i; } return 0; }这个代码执行到i5直接跳出循环。4continue 只会结束本次循环直接回到while条件判断不执行continue后面剩余代码。#include stdio.h int main() { int i 0; while (i 5) { i; //自增一定要放在continue后面不然变量永远不变。 if (i 2) continue; printf(%d, i); } return 0; }(5)while循环是先判断后执行。do-while循环是先执行后判断至少执行一次。6.do-while 循环do{循环体代码}while(条件表达式); //末尾分号不能丢一执行流程1.先执行一次do大括号里面的循环体2.再判断while条件3.条件为真则回到do继续循环若条件为假则推出循环。核心特点至少执行1次循环体不管条件一开始是真还是假。二与while循环的区别1while(条件)先判断后执行。条件为假一次都不跑。2do-while条件先执行后判断。最少运行1次。int a 10; while(a 5) { printf(while执行\n); } // 结果什么都不打印条件一开始就假 int b 10; do { printf(do while执行\n); }while(b 5); // 结果打印1次先跑代码再判断发现不成立退出7.go-to 语句标签名: //代码 goto 标签名;- 标签标识符 冒号 : 放在函数内部任意位置。- goto 标签; 程序直接跳转到标签所在那一行执行。⚠️重点goto只能在同一个函数内部跳转不能跨函数跳转。简单实列#include stdio.h int main() { int i 1; loop: //这是标签 printf(%d , i); i; if(i 5) goto loop; return 0; } //输出1 2 3 4 52、goto能干什么1. 实现循环可以替代 while / do‑while2. 多层循环快速跳出goto最正统使用场景break 只能跳出当前一层循环多层嵌套break要写很多标志变量goto一步直接跳出全部。多层循环示例for(int i0;i10;i) { for(int j0;j10;j) { if(i 3 j 3) { goto end_loop; //直接跳出两层循环 } } } end_loop: ; //标签位置 printf(全部循环结束\n);3. 错误处理一次性跳转到函数末尾做资源释放C语言内核大量这么写4.go-to 不能做什么坑点1.不能跨函数跳转标签和goto 必须在同一函数。void fun1(){ aa: ; } int main(){ goto aa; //编译报错跨函数不行 }2不能跳过定义变量定义。goto here; int a 10; //跳过变量初始化危险 here:3关于goto 语句- 可以往前跳也可以往后跳- 往前跳 → 形成循环- 往后跳 → 跳过一部分代码-不建议使用-使用的话在一个函数内部使用。适用于多层循环的场景。-其实不适用goto语句常常也能完成效果。
RELATED

相关推荐

STM32外挂MCP2515实现CAN通信:从SPI配置到收发调试全解析

STM32外挂MCP2515实现CAN通信:从SPI配置到收发调试全解析

简介:本资源是一套基于STM32F103与MCP2515芯片实现CAN总线可靠收发的完整嵌入式开发工程,面向嵌入式初学者、汽车电子及工业控制领域开发者,解决CAN通信驱动移植难、SPI配置易出错、收发逻辑不清晰等典型实践痛点。压缩包共193个文件&#xf…

📅 2026/10/18 11:40:34
Agent工具选型指南:小白如何选对第一款智能体开发平台

Agent工具选型指南:小白如何选对第一款智能体开发平台

2026 年,如果要找一个人工智能领域最热的赛道,Agent 开发绝对排在前列。打开招聘网站能看到“Agent 工程师”岗位越来越多,GitHub 上 Agent 项目的星标增长速度比很多传统开源项目快一个量级,连产品经理都开始用 Agent 平台搭建业…

📅 2026/10/18 8:45:04
小米2018秋招测试开发客观题合集:高频考点与备考复盘

小米2018秋招测试开发客观题合集:高频考点与备考复盘

2018年秋天,我还在准备校招,目标岗位是小米的测试开发工程师。当时在牛客和论坛上刷了不少题,也把小米在线测评里出现的客观题按知识点整理成了一份合集。现在回头翻看,虽然题型和当年的线上笔试系统已经不太一样,但核…

📅 2026/10/19 11:51:19
MORE NEWS

更多资讯

📰

微信社群机器人开发指南:从协议解析到企业微信实战

1. 微信社群机器人开发概述微信社群机器人是一种基于微信生态的自动化工具,能够帮助群主或管理员高效管理微信群。这类机器人通常具备自动回复、关键词触发、内容推送、数据统计等功能,广泛应用于电商客服、知识付费、社群运营等场景。在实际开发中&…

📰

金融AI安全治理:从成本中心到增长引擎的转型

1. 金融AI收入增长背后的安全治理逻辑金融行业正在经历一场由AI技术驱动的深刻变革。去年某国际银行通过AI风控系统将信贷审批效率提升40%,同时降低15%的坏账率——这个典型案例揭示了安全治理与AI创收的共生关系。当算法模型开始直接处理客户的资金流时&#xff0c…

📰

互联网医院解决方案:在线问诊系统与AI智慧分诊开发

1. 互联网医院解决方案概述互联网医院正在重塑传统医疗服务的交付模式。这套在线问诊系统源码AI智慧分诊APP开发方案,为医疗机构提供了从患者接入到诊疗服务的全流程数字化解决方案。核心价值在于通过技术手段突破时空限制,将三甲医院的优质医疗服务延伸…

📰

蒙特卡洛方法实战CartPole:从回报设计到策略改进的完整落地

CartPole 这个环境几乎是每个接触强化学习的人绕不开的第一道坎。倒立摆本身不复杂:一根杆子铰接在小车上,小车左右移动,目标是让杆子别倒。但真动手写代码的时候,很多人会卡在同一个地方——策略到底怎么评估?回报怎么…

📰

微信社群机器人开发指南:从技术选型到合规实践

1. 微信社群机器人开发概述微信社群机器人是一种基于微信生态的自动化工具,能够模拟人类在微信群中的交互行为,实现自动回复、消息管理、数据统计等功能。这类机器人通常通过微信官方接口或第三方技术方案实现,主要服务于社群运营、客户服务、…

📰

多模态大模型中的System 2认知架构与工程实践

1. 多模态大模型中的System 2认知架构解析当GPT-4V能够看着一张破损自行车图片说"需要更换链条"时,它真的理解机械原理吗?这触及了当前多模态大模型最关键的认知鸿沟——感知能力(System 1)与真实推理(Syste…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬