【C功能体】三种流程控制结构

C语言——流程控制 循环类型语法结构执行特点适用场景whilewhile(条件) { 循环体 }先判断条件,后执行循环体;可能一次都不执行。循环次数不确定,依赖条件判断。do-whiledo { 循环体 } while(条件);先执行循环体,后判断条件;至少执行一次。需要先执行操作再判断的场景(如输入验证)。forfor(初始化;条件;更新) { 循环体 }初始化、条件判断、更新三步合一,逻辑紧凑;常用于计数型循环。已知循环次数或需要明确控制循环变量的场景。 阅读详情

在C语言中,所有的程序设计都围绕着顺序、选择、循环这三种结构。本文将主要讲解选择结构和循环结构的语法及用法实例。


Table of Contents

选择结构

循环结构


C语言提供3种流程结构,不同的流程结构可以实现不同的运行流程。这3种流程结构分别是:

  1. 顺序结构:默认的流程结构。按照书写顺序执行每一条语句。
  2. 选择结构:对给定的条件进行判断,再根据判断结果来决定执行哪一段代码。
  3. 循环结构:在给定条件成立的情况下,反复执行某一段代码。


选择结构

IF……ELSE……

最简单的选择结构:
if ( 条件 )
{
    语句1;
    语句2;
    ....
}

选择结构的嵌套:
if ( 条件1 )
{
    语句体;
    
    if ( 条件2 )
    {
        语句体;
    }
}

如果……否则……:
 if ( 条件 )
{
    语句1;
}
else
{
    语句2;
}

多选择、多分支:
if ( 条件1 )
{
    语句1;
}
else if ( 条件2 )
{
    语句2;
}
else if ( 条件3 )
{
    语句3;
}
...
else
{
    其他语句;
}

switch……case……

语法格式:
switch(整型表达式)
{
    case 数值1:
        语句1;
        break;
    case 数值2:
        语句2;
        break;
    ... ...
    case 数值n:
        语句n;
        break;
    default :
        语句n+1;
        break;
}

break关键字的作用是退出整个switch语句。默认的格式中,每个case后面都有个break,因此执行完case中的语句后,就会退出switch语句。

如果某个case后面没有break,意味着执行完这个case中的语句后,会按顺序执行后面所有case和default中的语句,直到遇到break为止。

 

实例:快速理解switch语法结构

//功能:识别a变量的值
int a = 10;

switch (a) 
{
	case 0:
		printf("这是一个0");
		break;
	case 5:
		printf("这是一个5");
		break;
	case 10:
		printf("这是一个10");
		break;
	default:
		printf("什么也不是");
		break;
}


/*-------------------------分割线-------------------------*/
//功能:定性score的值
int score = 77;

switch (score / 10)
{
	case 10:
	case 9:
		printf("优秀");
		break;

	case 8:
		printf("良好");
		break;

	case 7:
	case 6:
		printf("中等");
		break;

	default:
		printf("差劲");
		break;
}


/*-------------------------分割线-------------------------*/
//功能:识别符号
int a = 10;
int b = 4;

char op = '-';

switch (op)
{
	case '+':
	{
		int sum = a + b;
		printf("a+b=%d\n", sum);
		break;
	}

	case '-':
	{
		int minus = a - b;
		printf("a-b=%d\n", minus);
		break;
	}

	default:
		printf("不能识别的符号");
		break;
}

循环结构

while循环

while ( 条件 )
{
    语句1;
    语句2;
    ....
}

法则:

  1. 如果条件成立,就会执行循环体中的语句(“循环体”就是while后面大括号{}中的内容)。然后再次判断条件,重复上述过程,直到条件不成立就结束while循环.
  2. while循环的特点:如果while中的条件一开始就不成立,那么循环体中的语句永远不会被执行.
  3. 可以省略大括号{},但是只会影响到while后面的第一条语句。不建议省略大括号。

do……while循环

do {
    语句1;
    语句2;
    ...
} while (条件);

法则:

  1. 先会执行一遍循环体中的语句(“循环体”就是do后面大括号{}中的内容)。接着判断while中的条件,如果条件成立,就执行循环体中的语句。
  2. 然后再次判断条件,重复上述过程,直到条件不成立就结束while循环
  3. do-while循环的特点:不管while中的条件是否成立,循环体中的语句至少会被执行一遍

for循环

for (语句1; 条件; 语句2) 
{
    语句3;
    语句4;
    ...
}

法则:

  1. for循环开始时,会先执行语句1,而且在整个循环过程中只执行一次语句1
  2. 接着判断条件,如果条件成立,就会执行循环体中的语句(“循环体”就是for后面大括号{}中的内容)
  3. 循环体执行完毕后,接下来会执行语句2,然后再次判断条件,重复上述过程,直到条件不成立就结束for循环

辨析break、continue:

  • break,一旦出现该语句,立即停止对于break最近的一层循环(即while、for);
  • continue,只能使用在循环结构中,它的作用是跳过这一次循环,直接进入下一次循环。

 

dify离线部署 以bge-m3为例,本地部署bge-m3首先在一台能连网的linux服务器上(部署有ollama)创建想要保存模型的文件夹编辑ollama.service,配置ollama模型的保存路径添加模型存储地址将models目录设置属主,必须做,否则ollama无法启动重新加载配置文件并重启ollama测试ollama 运行是否正常最后拉取 bge-m3可在/opt/LLMModels/bge_m3/models目录下看到拉取得模型使用tar命令压缩文件夹。 阅读详情

相关推荐

SAP资产按每天折旧功能介绍

注意:此处在计算百分比时将30天作为剩余使用寿命,因为SAPS/4HANA中的计算是通过考虑购置第一年的折旧总天数来进行的。这是因为我在计算总使用寿命时只使用了365天,如果剩余使用寿命大于1年,SAPS/4HANA会将闰年规范化为365天。此功能仅对确定使用寿命或剩余寿命百分比的折旧键有用,如果需要,这种折旧到日的解决方案可以应用于需要每天计算折旧的跨行业(任何国家/行业)。注意:这里在计算百分比时考虑了2天,因为364天已经过期,但目前我们到达2024年,使用寿命为366天。它只会在下一年生效。

yanzibing99的博客 1560

C语言的控制结构(顺序结构、选择结构、循环结构)详解

C语言的三种控制结构一、顺序结构二、选择结构if语句switch语句三、循环结构for循环while循环do while循环 前言:程序由三种基本结构组成:顺序结构、选择结构、和循环结构,任何程序都由这3种基本结构组合而成。 优点:不会存在无规律的转向,可以使程序结构清晰,易于验证正确性且易于纠错。遵循这种方法 的程序设计就是结构化程序设计。 此处简单画出三种结构的执行流程图: 一、顺序结构 顺序结构:依照线性顺序依次执行,简单说就是从上到下依次执行 例如下面程序会依次输出1、2、3、4、5 #inclu

kjl167的博客 4万+

TikTok达人私信自动化:用Node.js和纯JavaScript实现WSS协议通信(附完整代码结构)

本文详细介绍了如何使用Node.js和WSS协议实现TikTok达人私信自动化系统。通过分层架构设计、WSS连接管理、消息加密策略及频率控制,开发者可以构建稳定高效的私信工具,突破平台API限制,适用于跨境电商和社交媒体运营场景。

weixin_30352645的博客 519

C语言的三大基本结构

顺序结构、选择结构和分支结构。if分支语句、switch分支语句、for循环语句、while循环语句、do···while循环语句。

一只不会编码的程序猿 3万+

基于STM32避障/循迹/蓝牙遥控小车的硬件与软件底层设计

1、实现2m的自动直线行驶,要求左右偏移不大于10cm。2、车载显示屏显示车辆当前行驶速度或车辆运行时间,当前方20cm内出现障碍物时显示与前方障碍物的距离,车每次转弯蜂鸣器报警,同时通过左右指示灯指示转弯方向。3、依次驶过障碍物①②③④,且不触碰障碍物。4、成功进行调头转弯,行驶过程中车轮不碾压黑实线。5、在车道指定位置停车且不越界。6、通过红外、蓝牙、WiFi等任意一种方式实现对小车的控制,使其前进、后退、左转、右转。

2301_78758161的博客 1万+

MDK开发篇:基于立创逻辑派FPGA-G1与Cortex-M1软核的按键控制LED实战

本文详细介绍了基于立创逻辑派FPGA-G1开发板与高云Cortex-M1软核的完整开发流程。通过Gowin云源软件配置软核系统与GPIO外设,并在Keil MDK环境中编写按键控制LED的C程序,最终实现程序固化与上电自启动。教程涵盖硬件配置、软件开发、在线调试与固化部署全步骤,帮助STM32开发者快速上手FPGA软核开发。

weixin_42103128的博客 147

c语言程序流程控制(上)

学习笔记

qq_53661628的博客 417

在Simulink中搭建一个基于IoT设备间通信协议栈的仿真模型

物联网(IoT)设备间的通信协议栈仿真对于理解不同层级的协议如何协同工作,以及优化网络性能至关重要。通过Simulink结合MATLAB的强大功能,我们可以模拟和分析从物理层到应用层的完整通信过程。下面详细介绍如何使用Simulink进行IoT设备间通信协议栈的仿真。

amy_mhd的博客 156

【C语言】C语言的三种基本控制结构-顺序、选择、循环

C语言的三种基本控制结构-顺序、选择、循环

m0_48945495的博客 5582

02-Redis 核心特性与数据结构详解:揭秘高性能的技术内核

本文深度拆解 Redis 高性能的技术内核:揭秘其凭“内存存储 + C 语言开发” 实现微秒级延迟、10 万 + QPS 的性能优势;详解 5 种基础数据类型(String/Hash 等)与 4 种扩展数据类型(Stream/Geospatial 等)的特性及场景;还介绍多语言支持、RDB/AOF 持久化、主从复制 / 哨兵 / 集群等高可用方案,助读者掌握 Redis 技术核心与实践逻辑。

蜗牛老师,专注编程领域 995

Qt C++ 的虚拟演播室系统

**数据流转**:OpenCV 处理的图像格式通常是 `cv::Mat`,而 Qt 3D 渲染需要 `QImage` 或 `QTexture2D`。// 临时用颜色代替。// 前景在背景前面。#### 3.3 主窗口与 Qt 3D 集成 (`mainwindow.h` / `.cpp` / `.ui`)* **更复杂的 3D 场景**:加载 3D 模型(.obj, .gltf 等)作为背景和道具。1. **构建项目**:确保 `.pro` 文件中的 OpenCV 路径配置正确,然后构建项目。

寒寒豆豆软件公司的博客 111

学习笔记6 —— C语言流程控制

C语言流程控制 一、顺序结构 二、分支结构 1.if语句 2.if...else语句 3.if...else语句嵌套 4.if...else if...else语句 5.switch...case语句 三、循环结构 1.while语句 2.do...while语句 3.for语句 4.循环的嵌套使用 四、流程控制语句 1.continue语句 2.break语句 3.return语句

北豼不太皮的博客 1356

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

C语言【基础篇】之流程控制——掌握三大结构的奥秘

C语言中的流程控制。

2402_88461821的博客 1432

Statistics and Machine Learning Toolbox

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

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

c语言流程控制语句的基本控制结构有三种,C语言复习提纲模块2:三种基本结构及流程控制...

《C语言复习提纲模块2:三种基本结构及流程控制》由会员分享,可在线阅读,更多相关《C语言复习提纲模块2:三种基本结构及流程控制(7页珍藏版)》请在人人文库网上搜索。1、模块二:三种基本结构及流程控制C语言复习提纲C 程序的三种基本结构是 顺序结构、 选择结构、 循环结构 。这三 种结构分别需要借助于特定的语句控制实现。(1)顺序结构: 赋值语句和函数调用语句是控制该结构的主要 语句。函数调用语句中...

weixin_34122028的博客 2151

MySQL基础篇——流程控制结构

介绍MySQL中的流程控制结构

qq_43499848的博客 910

C语言流程控制语句简介

流程控制语句,就是通过一些语句,控制程序的执行流程。C语言中的流程控制语句共有三种:顺序结构,分支结构和循环结构。下面将对这三种结构进行详细介绍。

qq_64443929的博客 1787

C语言:流程控制

如果实际 数据列宽,使用空格补齐。如果实际 数据列宽,输出实际数据,失效。一个型整数也可以用%输出,反之一个型整数也可以用%、%、%格式输出。按相互赋值的规则处理。

2302_78686222的博客 2242

C语言流程控制

流程控制是编程语言中的核心概念,它决定了程序执行的顺序和逻辑。C语言提供了丰富的流程控制结构,主要包括:1. 顺序结构 - 程序按语句顺序执行2. 选择结构 - 根据条件选择执行路径3. 循环结构 - 重复执行某段代码4. 跳转语句 - 改变程序执行流程。

qq_65368461的博客 703

C语言-流程控制

本文介绍了程序流程控制的基本概念和结构。主要内容包括:1) 算法的定义与特征(有穷性、可行性、确定性),用流程图表示算法;2) 程序的三种基本结构:顺序结构、分支结构(单/双/多分支)和循环结构(当型循环和直到型循环);3) C语句的分类(控制语句、函数调用语句、表达式语句、空语句和复合语句)。文章通过具体示例和流程图,系统性地阐述了程序设计中的基本控制流程和语句结构。

Dd000110的博客 1031

Java 三种流程控制语句

一、顺序结构 如果代码里没有流程控制,程序从上到下按照书写的格式依次执行。 public static void main(String[] args) { int result = 1; result = result++; System.out.println("result=" + result); //1 ...

Charge8的博客 3142

C语言的三种基本结构

C程序的流程控制 文章目录C程序的流程控制一、C程序的结构化二、C程序的三种基本结构1.顺序结构2.分支结构a.条件分支条件分支语法格式:条件分支使用注意事项b.开关分支开关分支语法结构:开关分支使用注意事项:2.循环结构1.for循环for循环的语法格式:while循环while循环语法格式:do...while循环do...while循环语法格式:goto语句goto语句语法格式:空语句空语句使用语法:应用场景:C语言多维数组 一、C程序的结构化 C程序是以顺序结构,分支结构,循环结构三种基本结

qq_41681424的博客 3424

【Java流程控制】--从“跟着走”到“自己控”——三种基本流程控制

作为编程的“骨架”——流程控制,很多初学者会被顺序、选择、循环绕晕,那才能让代码按照自己的步骤来呢?其实Java的基本流程控制就三种:顺序结构就像“默认路线”;选择结构就像“判断题”;循环结构就像“重复工作”。就算在复杂的开发都离不开这三种流程。本文将介绍三种流程控制以及应用帮助你快速掌握这三种基本流程控制。

学生|学习笔记 欢迎讨论和指正 771

C语言语句及流程控制

C语言语句及流程控制 本章重点 u 语句和语句块 u 变量的作用域 u 顺序结构 u 判断结构 u 循环结构 从本章开始,读者将可以真真正正地写一个完整的C程序了!我们将在本章中介绍C程序的三种最基本的结构:顺序结构,选择结构和循环结构。读者们很快就会发现,掌握了这些最基本的程序结构之后,我们就可以用C语言写出很多很多有意思的程序。 语句和语句块 如果把一个C程序比喻成一栋高楼,

胡耀文 3380

C语言-流程控制结构

本文主要介绍C语言的流程控制部分。包括分支结构:if-else、switch-case; 循环结构:for、while、do-while;嵌套循环以及无限循环。还有break'、continue、go-to关键字的使用。

2403_90063112的博客 901

c语言-流程控制

c语言流程控制 输入输出

emmmoksb的博客 896

C语言 运算符和流程控制

《C语言核心内容提要》摘要: 本文系统梳理了C语言编程的核心知识点,包括: 位运算:详细解析了左移(<<)和右移(>>)操作,涵盖无符号/有符号数的移位规则及补位机制 程序结构:介绍三种基本结构(顺序、分支、循环)及其流程图表示方法 语句分类:控制语句、函数调用语句等5类C语句的语法与用法 输入输出:重点讲解printf/scanf函数,包括格式控制符(%d,%f等)、缓冲区机制及数据对齐技巧 数据类型处理:整型、字符型、浮点型等不同数据的格式化输出规范 全文以实例驱动,涵盖移位运算

hzq040605的博客 1272
上一篇: 【Java网络】快速入门网络编程
下一篇: 【C功能体】C语言的函数语法和特性
ALGO阿狗
博客等级 码龄9年 64粉丝 149原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值