第04讲 程序的流程控制(一)
chap04_程序流程控制(二)

例4.10主要代码
int i, j; for ( i = 1 ; i <= 4 ; i++ ) /* 外层循环:控制行数 */ { for ( j = 1 ; j <= 4-i ; j++ ) /* 内层循环:控制空格数 */ { printf( " " ); /* 输出空格 */ } for ( j = 1 ; j <= 2*i+1 ; j++ ) /* 内层循环:控制星号数 */ { printf( "*" ); /* 输出星号 */ } printf( "\n" ); /* 输出回车 */ }
i = 1, 2, ......
分析:欲求该数列的和,可设两个变量sum 和item,sum初值为0,item初值为数列的 第一项1。然后把item加到sum上,重复10 00次,每次循环时,对item的值进行修改 。这样就可以实现数列元素的累加。
22
例4.8主要代码
int i, sign;
double item, sum; sum = 0; /* 初值置为0 */ sign = 1; for ( i = 1 ; i <= 1000 ; i++ ) { item = sign / ( 2.0 * i - 1 ); /* 计算每一次的累加项item */ sum += item; /* 将累加项item加到总和sum上 */ sign = -sign; /* 计算下一个累加项的符号sign */ }
32
例4.9主要代码
int i, j; for ( i = 1 ; i <= 9 ; i++ ) /* 外层循环:控制行数 */ { for ( j = 1 ; j <= i ; j++ ) /* 内存循环:控制输出的等式数 */ { printf( "%d+%d=%2d ", i, j, i+j ); /* 输出具体内容 */ } printf( "\n" ); /* 每行最后应有一个回车换行 */ }
汇编语言第四章程序流程控制语句及程序设计PPT课件

•第4章 程序设计方法
4.3.2 常用的DOS系统功能调用
1.单字符输入(1号调用) 2.单字符显示(2号调用) 3.打印输出(5号调用) 4.结束调用(4CH号调用) 5.显示字符串(9号调用) 6.字符串输入(10号调用)
•第4章 程序设计方法
1.单字符输入(1号调用) 格式:MOV AH,1
SEGMENT STACK
DB 200 DUP(0)
STACK
ENDS
CODE
SEGMENT
ASSUME DS:DATA,SS:STACK,CS:CODE
START: MOV AX,DATA
MOV DS,AX
•第4章 程序设计方法
LEA MOV INT LEA MOV
INT LEA MOV MOV ADD LEA
2.流程图符号表示
(1)起止框:表示程序 的开始和结束。
•起止框
•第4章 程序设计方法
(2)判断框 (3)处理框 (4)调用框
•第4章 程序设计方法
(5)指向线 (6)连接框
•第4章 程序设计方法
4.2 顺序程序设计
下面举例说明顺序程序的设计。 【例】试编写一程序计算以下表达式的值。 w=(v-(x*y+z-540))/x 式中x、y、z、v均为有符号字数据。 设x、y、z、v的值存放在字变量X、Y、Z、V中,
5.显示字符串(9号调用)
格式:LEA DX,待显示字符串首偏移地址
MOV AH,9
INT
21H
功能:将当前数据区中以‘$’结尾的字符串送显示器显示。
6.字符串输入(10号调用)
格式:LEA DX,缓冲区首偏移地址
MOV AH,10
INT 21H
Ch04程序流程和异常处理

PPT文档演模板
Ch04程序流程和异常处理
4.3.1 for循环
• for循环语句是计数型循环语句,一般用 于已知循环次数的情况,所以也称为定 次循环
• for (initializer; condition; iterator)
•{ • 循环体语句序列;
•} • 说明1~8 • 【例4.10】利用for循环求1~100中所有
PPT文档演模板
Ch04程序流程和异常处理
3. 多分支结构
• if (条件表达式1)
• 语句/语句块1;
• else if (条件表达式2)
• 语句/语句块2;
•…
• else if (条件表达式n)
• 语句/语句块n;
• [else
• 语句/语句块n+1;]
• 【例4.4】已知某课程的百分制分数mark,将其转换为五级 制(优、良、中、及格、不及格)的评定等级grade
•{
•
// 在异常发生时执行的代码
•}
• finally
•{
•
// 最终必须执行的代码(即使发生异常),如释放资源等
•}
PPT文档演模板
Ch04程序流程和异常处理
异常类中的常用属性
PPT文档演模板
Ch04程序流程和异常处理
多重catch块
有时候,在try块中的代码段将有可能产生多种不同类型的异 常,而我们又需要针对不同的异常类型进行不同的处理方式, 那么我们就可以使用多重catch块,来分别捕获不同类型的异 常。
异常类体系结构图
PPT文档演模板
Ch04程序流程和异常处理
finally块
无论try/catch块中发生了什么,finally块都一定会 执行; 当异常发生时,程序可能会意外中断,有些被占用的 资源就得不到清理。finally块可以确保执行所有的清 理工作; 无论是否发生异常,finally块都将执行; finally块是可选的,可视具体情况决定是否添加; finally块必须和try块一起使用,不能单独存在。
第04讲 巡视与旁站、见证取样与平行检验

第04讲巡视与旁站、见证取样与平行检验第三节施工过程的质量控制一、巡视与旁站(一)巡视(施工现场定期或不定期的检查活动)1. 检查内容(4方面、多选考点)■是否按图、标准、施工组织设计、方案施工■使用的材料、构配件和设备是否合格■现场管理人员是否到位(特别是质量管理)和履职情况■特种作业人员是否持证上岗电工;架子工;起重机械司机、起重机械安装拆卸工;起重信号司索工、高处作业吊篮的拆卸工、焊接切割操作人员等(二)旁站监理机构对工程的关键部位或关键工序的施工质量进行的监督活动。
1.工作程序旁站的关键部位、关键工序:将影响工程主体结构安全的、完工后无法检测其质量的或返工会造成较大损失的部位及其施工过程。
2. 旁站工作要点(1)编制监理规划时,应明确旁站的部位和要求。
(2)旁站人员的主要职责【多选考点】■检查施工单位现场质检人员到岗、特殊工种持证上岗;材料、机械的准备情况;(巡视是管理人员、特种作业人员)■监督关键部位、关键工序施工情况及强制性标准的执行;■核查进场材料、构配件、设备和商品混凝土的质量检验报告,监督检验情况(施工单位自行检验和第三方的复验);■做好旁站记录,保存旁站监理原始资料。
【区分】旁站关注“质量”(3)对施工中出现的偏差及时纠正,保证施工质量■违反强制性标准,责令立即整改■已经或可能危及工程质量的,及时向专业监理工程师或总监理工程师报告,由总监理工程师下达暂停令,指令施工单位整改。
(4)凡没有实施旁站监理或者没有旁站记录的,专业监理工程师或总监理工程师不得在相应文件上签字。
工程竣工验收后,项目监理机构应将旁站记录存档备查。
【例题·单选】(2021)根据《建筑施工特种作业人员管理规定》,必须持证上岗的工种是()。
A.混凝土工B.木工C.建筑架子工D.在吊篮上作业的抹灰工『正确答案』C『答案解析』本题考查的是巡视与旁站。
根据《建筑施工特种作业人员管理规定》,对于建筑电工、建筑架子工、建筑起重信号司索工、建筑起重机械司机、建筑起重机械安装拆卸工、高处作业吊篮安装拆卸工、焊接切割操作工以及经省级以上人民Z F建设主管部门认定的其他特种作业人员,必须持施工特种作业人员操作证上岗。
程序的流程控制

循环结构
for 语句
for(循环初始化;循环条件;循环参数调整)循环体
for 循环结构示意
循环初始化 循环参数调整
循环条件 true 循环体
if(i>=j)
cout<<i<<endl;
条out<<j<<endl;
}
9、要学生做的事,教职员躬亲共做; 要学生 学的知 识,教 职员躬 亲共学 ;要学 生守的 规则, 教职员 躬亲共 守。21 .7.1221 .7.12M onday , July 12, 2021 10、阅读一切好书如同和过去最杰出 的人谈 话。14:08:1414 :08:141 4:087/1 2/2021 2:08:14 PM 11、一个好的教师,是一个懂得心理 学和教 育学的 人。21. 7.1214:08:1414 :08Jul- 2112-Ju l-21 12、要记住,你不仅是教课的教师, 也是学 生的教 育者, 生活的 导师和 道德的 引路人 。14:08:1414:0 8:1414:08Mon day , July 12, 2021 13、He who seize the right moment, is the right man.谁把握机遇,谁就心想事成。21.7.1221.7.1 214:08:1414:08 :14July 12, 2021 14、谁要是自己还没有发展培养和教 育好, 他就不 能发展 培养和 教育别 人。202 1年7月 12日星 期一下 午2时8 分14秒 14:08:1 421.7.1 2 15、一年之计,莫如树谷;十年之计 ,莫如 树木; 终身之 计,莫 如树人 。2021 年7月下 午2时8 分21.7. 1214:0 8July 12, 2021 16、提出一个问题往往比解决一个更 重要。 因为解 决问题 也许仅 是一个 数学上 或实验 上的技 能而已 ,而提 出新的 问题, 却需要 有创造 性的想 像力, 而且标 志着科 学的真 正进步 。2021 年7月12 日星期 一2时8 分14秒 14:08:1 412 17、儿童是中心,教育的措施便围绕 他们而 组织起 来。下 午2时8 分14秒 下午2时 8分14:08:1421 .7.12
2020年一级消防工程师《消防安全案例分析》第04讲2019年案例分析真题解析(四)

勤思敏学、厚德济世2020年一级消防工程师《消防安全案例分析》2019年真题解析班讲义(四)第五题某高层商业综合楼,地下2层,地上30层,地上一层至五层为商场,按规范要求设置了火灾自动报警系统、消防应急照明和疏散指示系统、防排烟系统等建筑消防设施。
业主委托某消防技术服务机构对消防设施进行了检测,检测过程及结果如下:1.火灾自动报警设施功能检测现场随机抽查20只感烟探测器,加烟进行报警功能试验。
其中,1只不报警,1只报警位置信息显示不正确,其余18只报警功能正常。
2.火灾警报器及消防应急广播联动控制功能检测将联动控制器设置为自动工作方式,在八层加烟触发1只感烟探测器报警,八层的声光警报器启动,再加烟触发八层的另1只感烟探测器报警,七、八、九层的消防应急广播同时启动、同时播放报警及疏散信息。
3.排烟系统联动控制功能检测将联动控制器设置为自动工作方式,在二十八层走道按下1只报警按钮,控制器输出该层排烟阀启动信号,现场查看排烟阀已经打开,对应的排烟风机没有启动。
按下排烟风机现场电控箱上的手动启动按钮,排烟风机正常启动。
4.消防应急照明和疏散指示系统功能检测在商业综合楼-层模拟触发火灾报警系统2只探测器报警,火灾报警控制器发出火灾报警输出信号,商业综合楼地面上的疏散指示标志灯具一直没有应急点亮,手动操作应急照明控制器应急启动,所有应急照明和疏散指示灯具转入应急工作状态。
根据以上材料,回答下列问题(共20分):1.该商业综合楼感烟探测器不报警的主要原因是什么?报警位置信息不正确应如何解决?2.根据现行国家标准《火灾自动报警系统设计规范》(GB50116),该商业综合楼火灾警报器及消防应急广播的联动控制功能是否正常?为什么?3.根据现行国家标准《火灾自动报警系统设计规范》(GB50116),该商业综合楼排烟系统联动控制功能是否正常?为什么?联动控制排烟风机没有启动的主要原因有哪些?4.该商业综合楼地面上的疏散指示标志灯具应选用哪种类型?消防应急照明和疏散指示系统功能是否正常?为什么?5.消防应急照明和疏散指示系统功能检测过程中,该商业综合楼地面上的疏散指示标志灯具一直没有点亮的原因有哪些?1.该商业综合楼感烟探测器不报警的主要原因是什么?报警位置信息不正确应如何解决?【参考答案】1)感烟探测器不报警的主要原因:(1)感烟探测器质量问题或损坏,如感烟探测器地址码失效、感烟探测器本身损坏、接口板损坏等(2)感烟探测器被屏蔽(3)线路短路或断路。
程序的流程控制

for循环最常用,任何其他循环都可以写成for循环
2018/11/3 22
二、循环的控制
1、计数器(循环变量)控制循环
int i, sum; sum=0; for(i=1; i<=100; i++) { sum+=i; } printf(“%d\n”, sum);
2018/11/3
int m, max; scanf(“%d”, &max); for(i=2; i<=10; i++) { scanf(“%d”, &m); if(m>max) max=m; } printf(“%d\n”, max);
23
二、循环的控制
2、其他条件控制循环
int i = 0; float y = 1; while( y < 2 ) { y = y*1.09; i++; } printf(“%d\n”, i );
2018/11/3
int i; float y = 1; for( i = 0; y < 2; i++ ) y = y*1.09; printf(“%d\n”, i );
2018/11/3
int x = 11; if(x >= 0) if(x < 10) printf(“0<=x<10”); else printf(“x<0”);
6
应写成这种嵌套格式(s3_1,p24):
…… if(x >= 90) printf(“优”); else if(x >= 80) printf(“良”); else 相当于 if(x >= 70) printf(“中”); else if(x >= 60) printf(“及格”); else printf(“差”);
04-第四讲跳一跳讲义

软件编程系列课讲义Scratch前置课第四讲:跳一跳一、教学目标1、掌握下一个造型、等待()秒等积木脚本的使用,将y坐标增加()、移到x()y()、在()秒内滑行到x()y()的效果区别;2、学习停止全部脚本的使用。
3、了解动画的形成原理和相对运动的原理二、主要程序脚本三、课堂准备四、上课流程本节课包括8步具体流程:(1)第1步为导入部分,通过互动的形式,询问小朋友喜欢的动画片,以及对动画片原理是否了解,引入动画制作的原理和本节课制作的作品内容。
时长控制在10分钟内。
(2)第2步为角色功能分析,通过展示效果视频分析角色的动作,对任务进行拆分。
时长控制在5分钟内。
(3)第3-6步为项目制作,通过不停地切换造型实现小马奔跑的效果,在实现小马跳起来的过程中对比三种坐标移动的积木。
分析小马跳跃过程,实现按下空格小马跳起来的效果。
最后实现小马碰到小球后停止游戏的效果,学习“停止全部脚本”的积木脚本使用。
时长控制在60分钟内。
(3)第7步为小挑战,添加变量生命值,实现小马碰到小球后生命值减少的效果,考察变量的掌握。
时长控制在10分钟内。
(4)第8步为课堂总结,总结本节课的重点积木脚本。
时长控制在5分钟内。
B.A.五、主要程序说明【程序1-1描述】角色造型不停地切换,切换得非常快。
【程序1-2描述】小马驹角色的造型不停切换,有不停奔跑的效果,奔跑的速度比添加“等待()秒”积木之前慢。
【程序2-1描述】按下空格后,小马驹移动到指定位置。
“移到x()y()”积木中数字的位置为小马驹的起跳位置。
【程序2-2描述】按下空格键后,小马驹从(-145,-84)的位置出发,先在0.1秒内向上滑动100的距离,然后0.1秒内向下滑动100的距离,回到起跳位置。
【程序2-3描述】按下空格键后,小马驹从(-145,-84)的位置出发,先在0.1秒内向上滑动100的距离,在空中停留0.3秒后,在0.1秒内向下滑动100的距离,回到起跳位置。