微机接口技术与虚拟仪器设计(杨武夷)第4章 程序结构.ppt_第1页
微机接口技术与虚拟仪器设计(杨武夷)第4章 程序结构.ppt_第2页
微机接口技术与虚拟仪器设计(杨武夷)第4章 程序结构.ppt_第3页
微机接口技术与虚拟仪器设计(杨武夷)第4章 程序结构.ppt_第4页
微机接口技术与虚拟仪器设计(杨武夷)第4章 程序结构.ppt_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 第4章 程序结构 2 本章内容 4.1 For循环 4.2 顺序结构 4.3 While循环 4.4 条件(Case)结构 4.5 事件结构 4.6 公式节点 3 4.1 For循环 For循环用于将某段程序循环执行指定的次 数。可以通过两种方法指定循环次数 一种是直接给定 一种是通过以索引的方式输入数组,由数组的 大小决定For循环的次数 4 4.1 For循环 直接给定循环执行的次数 N代表For循环 的循环次数 i代表当前 循环的索 引,从0开 始 矩形框内编 写需要循环 的程序体 for(int i=0;i=N 24 4.3 While循环 数据输入输出: 默认情况下是以非索引的方式输入输出数据 可以设置为通过索引的方式输入输出数据 25 4.3 While循环 添加定时器 LabVIEW在执行While循环时,如 果没有指定循环的时间间隔,那么 While循环将以CPU的极限速度运 行。 设定循环时间间隔 26 4.4 条件结构 等价于if.else.语句的条件结构 有两个分支:真/假分支 布尔条件 输入端子 “真”分支中程序只有在布 尔输入为“真”时才执行 “假”分支中程序只有在布 尔输入为“假”时才执行 27 4.4 条件结构 If(a%2=0) b=a+2; else b=a+1; 等价于if.else.语句的条件结构 有两个分支:真/假分支 例子:14 Case_1.vi 28 4.4 条件结构 从Case结构中输出数据 例子:15 Case_2.vi 数据端口 29 4.4 条件结构 b从条件结构的数据端口得到数据, 但是当条件为“假”时,没有数据流 入数据端口,此时数据流不能正常“ 流动”,程序出错 If(a%2=0) b=a+2; 30 4.4 条件结构 If(a%2=0) b=a+2; 条件结构必须 包括与条件输 入端子所有可 能值相对应的 条件分支。 31 4.4 条件结构 If(a%2=0) b=a+2; else b = b; 例子:16 Case_3.vi 32 4.4 条件结构 If(a%2=0) b=a+2; else 例子:17 Case_4.vi 33 4.4 条件结构 等价于switch语句的Case结构 例子:18 简易计算器.vi int q = ;/ 代表运算类型 double x, y, z; switch (q) case 0: z = x + y; break; case 1: z = x y; break; case 2: z = x * y; break; case 3: z = x / y; break; default: z = x + y; 当输入端子输入的值不 是各分支对应的值,就 执行默认分支 34 4.5 事件结构 事件结构:等待某“事件”的发生,当“事件 ”发生时,执行相应的动作(程序代码) 编写一个简单的单击计数器,每当用户单击一 个按钮时,计数器加1 事件:按钮被单击 动作:计数器加1 例子:19 事件结构.vi 35 4.5 事件结构 默认的事件为“超时”事件:等待指定的时 间后触发“超时”事件。 例子:20 事件结构-超时.vi 超时等待 时间输入 端子,默 认值为-1, 表示不触 发“超时”事 件 事件相关 属性 运行当前矩形方框 内程序的触发事件 36 4.5 事件结构 编辑本分支所处理的事件 37 4.5 事件结构 设置事件源 设置事件 选择事 件源 选择事件 类型 38 4.5 事件结构 添加程序框图对其他事件 (按钮2被鼠标按下)的 响应 事件相 关属性 运行当前程序框中程 序的触发事件 39 4.5 事件结构 事件相 关属性 运行当前程序框中程 序的触发事件 40 4.5 事件结构 添加While循环使程序不断运行,直至通过按钮 控制其结束: 例子有什么问题? 19 事件结构-While.vi 41 4.5 事件结构 控制While循环结束:添加事件分支响应“ 停止”按钮。 42 4.6 公式节点 类似函数 通过公式节点,用户不仅可以实现复杂的数学公 式,还能通过文本编程写一些基本的逻辑语句, 如ifelse, case, while循环之类的语句。 公式节点中可以包含任意数量的公式 多输入多输出 y = y2 = b + c 43 4.6 公式节点 通过公式节点实现判断两个数中的 哪个更大 公式节点等价于C语言中的函数, 输入输出相当于C语言函数中的的 输入输出变量 设置输入输出 void maxv(double x,double y, double else out = y; 44 4.6 公式节点 通过公式节点实现判断两个数中的哪个更大 例子:21 公式节点.vi 45 公式节点 变量声明 数据类型:float、float32、float64、int、int8、int16 、uInt8、 uInt16、 uInt32 float a; uInt32 y10; 如果数据来源于外部输入,就不能在公式节点内 声明了。如果用到的变量不来自外部输入,那么 必须声明才行。任何情况下数据必须有而且只能 有一次声明。 46 公式节点 赋值语句 =、+=、-=、*=、/=、=、=、&=、=、|= 、%=、*= 条件语句 if ifelse 47 公式节点 循环语句 dowhile语句 while 语句 for语句 break、continue的功能与C语言中的相同 swith语句 48 思考 问题: For循环体内的程序要用到For循环体外的二维 数组,如果以索引的方式输入数组,则循环次 数是行数还是列数?每次循环,For循环体内 得到的是什么数据? 如果指定了循环次数,且以索引的方式输入数 组,那么,For循环的循环次数是多少? 49 上机实验1 通过For循环产生一 个随机的一维数组, 数组大小为5。再通 过另一个For循环计 算数组中全部数据的 和并显示。 随机数生 成节点 50 上机实验2 设计一个程序,前面板有一个数值型的无符号整 形输入控件和一个数值型的无符号整形显示控件 。 每当用户输入数字运行程序后,累加值就显示 输入数字的累加值。例如输入数值34后运行程序 ,累加值为7;输入345后运行程序,累加值为12 。 51 上机实验3 利用顺序结构和循环结构写一个跑马灯, 如下图所示,5个灯从左到右不停的轮流点 亮,闪烁间隔由滑动条调节 52 上机实验4 通过While循环计算一个整数的阶层并显示 ,要求利用反馈节点。 通过公式节点计算一个整数的阶层并显示 53 上机实验5 设计一个程序,前面板有一个数值型的无符号整 形输入控件和一个布尔型的显示控件。每当用户 输入数字运行程序后,程序能判断输入的数是否 为素数。判断一个数是否是素数,我们可以采用 这样的算法:用2N-1,依次去对N求余,只要 有一个余数是0,则N就不是素数。还有什么更快 的方法? 54 上机实验6 在上机实验2程序的基础上,利用While循 环和事件结构实现在数字输入控件

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论