首页 10手把手教你学单片机的C语言程序设计_开关语句和循环语句

10手把手教你学单片机的C语言程序设计_开关语句和循环语句

举报
开通vip

10手把手教你学单片机的C语言程序设计_开关语句和循环语句 学 习单 片机 厂阅口勃亘居升圈崎臼 分支后 , 使流程跳 出 结 构 , 即终止 语句的执行 , 可用一 个 匕 语句完成 。 开关语句是一种多分 支选择语句 , 是用来实现多方向条件分 支的语句 。虽然从理论上讲采用条件语 句也可以实现多方向条件分支 , 但是当 分支较多时会使条件语句的嵌套层次 太多 , 程序冗长 , 可读性降低 。开关语句 可直接处理多分支选择 , 使程序结构清 晰 , 使用方便 。 开关语句是用关键字 构成的 , 它的一般形式如下 表达式 娜缴豁巍舔势 常量表达式 语句 从 ...

10手把手教你学单片机的C语言程序设计_开关语句和循环语句
学 习单 片机 厂阅口勃亘居升圈崎臼 分支后 , 使 流程 快递问题件怎么处理流程河南自建厂房流程下载关于规范招聘需求审批流程制作流程表下载邮件下载流程设计 跳 出 结 构 , 即终止 语句的执行 , 可用一 个 匕 语句完成 。 开关语句是一种多分 支选择语句 , 是用来实现多方向条件分 支的语句 。虽然从理论上讲采用条件语 句也可以实现多方向条件分支 , 但是当 分支较多时会使条件语句的嵌套层次 太多 , 程序冗长 , 可读性降低 。开关语句 可直接处理多分支选择 , 使程序结构清 晰 , 使用方便 。 开关语句是用关键字 构成的 , 它的一般形式如下 表达式 娜缴豁巍舔势 常量表达式 语句 从 常量表达式 语句 常量表达式 语句 语句 开关语句的执行过程是 当 后面表达式的值与某 一 “ ’’后面的常量表达式的值相等 时 , 就执行该“ ”后面的语句 , 然后 遇到 语句而退 出 语句 。 若所有“ ’’中常量表达式的值都没 有 与 表 达 式 的值相 匹 配 , 就执 行 后面的 语句 。 后面括号内的表达式 , 可 以是整型或字符型表达式 , 也可以是枚 举类型数据。 每一个 常量表达式的值必 须不同 , 否则就会出现自相矛盾的现象 对同一个值 , 有两种或者多种解决方 案提供 。 每个 和 的出现次 序不影响执行结果 , 可先出现“ ” 再出现其它的“ ” 。 假如在 语句的最后没有加 、 ” , 则流程控制转移到下一个 继续执行 。 因此 , 在执行一个 在 图形液晶试验板 上实现 输入年份 和月份 后 , 程序计算出该月有多少天 。 键 用作状态设定 输入年 、 月或显示天数 的切换 , 键用作输入年份的低 位 如输入 年的 或输入月份 , 键用作输入年份的高 位 《如输入 年的 。 该程序 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 的关键是要判断当年 是否为闰年 。 闰年的 月有 天 , 平 年的 月只有 天 。 闰年的条件是 年份数 能被 整除 , 但不能被 。。整除 或者年份数 能被 。。 整除。 其逻辑关系为汉 附 。 卜 当此表达式的值为真时 , 为 闰年 , 否则为平年 。 在我的文档中建立一个文件 目录 , 然后建立 的工程项 目 , 最后建立源程序文件 。 输入下面的程序 序号 以 同 」 , , , , , , , 刀 二 二 二 一 , 少 一一一一 一 一一 一一 一一 一 一一 一一 一一 一 一 一一 一 一 〕 刀一一 一一一 一 一一一 一 一一 一一一 一一一一 一一 一一 一 , 刀 一 一 一 几 伙 一一 一 一 一一 一一 一 一一 一 一一 一 一一一一 一 一一一 一一 一 一一 一一 一一 一 一 一一一 一一 一一 一 一 一一一 献 」 「 〔 」 【 」 」 【 」 】 【 © 1994-2008 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net 班翔侄居加国踢曰卜 学 习单 片机 」 【 」 【 门 」 」 刀 一一 一一 一一一 一一 一 一 一一 一 一一一 一 一一一 一一 , 二 二 , 一一一 一 一 一 一 一 一一一 一 一一 一一 一 一一 一 一一一 一 一 一 一一 一 一一 一 一一 一一 一 一一 一一 一一 一 一一 一一 一 一 一一 一一一一一一 一一 一一一 一一 一一 一一 一 一一 习 一 刀一 一一 一一 一一一 一一 一一一 一一 一一 一一 一 一一 , 【 编译通过后 , 将生成的 文件烧录到 芯片中 , 将芯片插入 到 图形液晶试验板上 , 试 验板上接通 电源 , 个数码管显示 年份 “ , , 。 按下 、 键可输入年 份 按一下 键切换到输入月份 , 按下 键可输入月份 再按一下 键切换到显示该月天数 , 若输入条件不符合《如输入了 月 , 则显示屏熄灭以示输入出错 。 下面分析程序 。 序号 程序解释 , 以下同 包含头文件 序号 一 数据类型的宏定义 。 序号 数码管 一 的字形码 。 序号 数码管的位选码 。 序号 程序分隔 。 序 号 定 义 无 符 号 字符 型 全 局 变量 , 状态标志 。 序号 定义 无符号 整型全局 变量 《年 。 序号 定义无符号字符型全局变量 《月 序号 定义无符号字符型全局变量 天 。 序号 一 定义无符号字符型全局变量 一 、 、 一 程序执行过程中的中间变量 。 序号 程序分隔。 序号 一 函数声明。 序号 , 程序分隔 。 序号 定义函数名为 的主函数 。 序号 的主函数开始 。 定义无符号 字符型局部变量 序号 定义无符号整型局部变量 、 。 序号 循环语句进行无限循环 。 序号 调用 键判断子函数 。 序 号 语 句 根 据 表 达 式 的值进行散转 。 序号 语句开始 。 序号 一 调用 、 子 函 数 , 并把按键输入值赋 、 序号 调用 子函数 , 并把按键输 入值赋 。 序号 一项也不符合 , 则直接退出 。 序号 语句结束 。 序号 数学计算 。 序号 程序分隔 。 序号 调用 子 函数得 到当月的天数 。 序号 程序分隔 。 序号 一 语句循环 , 用于点亮刷新 个数码管 。 序号 语句开始 。 序 号 语 句 , 根 据 表 达 式 一 的值进行散转 。 序号 语句开始 。 序号 一 点亮 位数码管 , 显示年份 序号 一 点亮右边 位数码管 , 显示月 份 序号 如果 的值为真 大于 , 点亮左边 位数码管 显示天数 。 序号 一 否则熄灭数码管 。 序号 一项也不符合 , 则直接退出 。 序号 语句结束 。 序号 语句结束 。 序号 循环语句结束 。 序号 门 的主函数结束 。 序号 程序分隔 。 序号 一 延时子函数 。 © 1994-2008 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net 学 习 单 片机 叫甲翔自睡两困种 序号 程序分隔 。 序号 一 子函数 。 序号 引 子函数开始 。 序号 尸 口置全 以便读取按键输入 。 序号 如果 等于 , 说明 键按下 。 序号 进入 条件语句 。 序号 一 语句 。 序号 语句开始 。 序号 为 时 , 递增。 序号 变化范围 一 年份 的低 位变化范围 一 。 序号 一 为 时 , 递增 。 序号 变化范围 一 月份 的变化范围 一 。 序号 一项也不符合 , 则直接退出 。 序号 语句结束。 序号 条件语句结束 。 序号 子函数结束。 序号 程序分隔 。 序号 。一 子函数 可参考序号 一 对 子函数的分析 。 序号 程序分隔 。 序号 一 多 子函数。 序号 子函数开始 。 序号 户 口置全 以便读取按键输入 。 序号 如果 等于 , 说明 键按 下 , 递增 。 序号 变化范围 。一 只能选 择 输入 年份 、 输 入月 份 、 显 示 天 数 种 状态 。 序号 子函数结束 。 序号 程序分隔 。 序号 一 子函数 , 通过输入年 份 、 月份 , 计算出当月的天数 。 序号 子函数开始 定义无符号字 符型局部变量 。 序 号 一 语 句 , 根 据 月 份 得到天数 。 序号 语句开始 。 序号 一 、 、 、 、 、 、 月 的天 数为 天 。 序 号 一 , 、 、 、 月 的天 数 为 天 。 序号 月的天数如闰年为 天 。 序号 , 否则是平年为 天 。 序号 如月份出错 如输入了 个月 , 天数返回 序号 语句结束 。 序号 , 如月份正确 , 返回该月的天数 。 序号 子函数结束 。 在许多实际问题中 , 需要程序进行 有规律的重复执行 , 这时可以用循环语 句来实现 。 在 语言中 , 用来实现循环 的语句有 语句 、 。一 语句 、 语句及 。语句等 。 语句 网 语句构成循环结构的一般形 式如下 条件表达式 语句 其执行过程是 当条件表达式的结 果为真 非 值 时 , 程序就重复执行后 面的语句 , 一直执行到条件表达式的结 果变化为假 值 时为止 。 这种循环结 构是先检查条件表达式所给出的条件 , 再根据检查的结果决定是否执行后面 的语句 。如果条件表达式的结果一开始 就为假 ,则后面的语句一次也不会被执 行 。 这里的语句可以是复合语句 。 图 为 语句的流程图 。 进入 循环 瓤成立卜岁 语句段 ①丽青橇森 麟澎蘸蒸滩粼鑫 用 语句求 ’二 的 结果并将结果在 字符液晶 试验板上输出显示 。 在我的文档中建立一个文件 目录 , 然后建立 的工程项 目 , 最后建立源程序文件 。 输入下面的程序 序号《以下同 【 」【 , , , , , , 刀 二 二 二 一, 【 二 二 二 二二 二 【 , 二 二 一 一 一一 一 一一一 一一一一一 一一一 一 一 一 一 一一一 【 任 【 编译通过后 , 将生成的 文件烧录到 芯片中 , 将芯片插 入到 字符液晶试验板上 , 试 验板上接通 电源 , 个数码管显示 等差 数列之 和 ⋯十 的结果 “ ” 。 下面分析程序 。 序号 程序解释 , 以下同 包含头文件 。 序号 一 数据类型的宏定义 。 序号 数码管 一 的字形码 。 序号 程序分隔 。 序号 一 延时子函数 。 序号 程序分隔 。 序号 定义函数名为 的主函数 。 序号 主函数开始 。 序号 定义无符号整型变量 、 门。 序号 赋初值 序号 赋初值 。 序号 一 循环语句 。 , 序号 循环语句开始 。 序号 一 数学计算 。 序号 循环语句结束。 序号 分隔 。 © 1994-2008 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net 呀翔侄居加圈愉曰卜 学 习 单 片机 书 序号 循环语句进行无限循环 。 序号 循环语句开始 。 序号 点亮数码管个位 。 序号 点亮数码管 位 。 序号 点亮数码管百位 。 序号 点亮数码管千位 。 序号 循环语句结束 。 产号 旧 主函数结束。 。一 话句 。一 川 语句构成循环结构的一 般形式如下 语句 条件表达式 其执行过程是 先执行给定的循环 体语句 , 然后再检查条件表达式的结 果 。 当条件表达式的值为真 非 值 时 , 则重复执行循环体语句 , 直到条件 表达式的值变为假 值 时为止 。 因 此 , 用 。一 语句构成的循环结构 在任何条件下 , 循环体语句至少会被执 行一次 。 对于 同一个循环 问题 , 可 以用 语句处理 , 也可以用 。一 结 构处理 。 。一 结构等价为一个语 句加上一个 结构 。 一 结构 适用于需要循环体语句执行至少一次 以上的循环的情况 。 语句构成循 环结构可 以用于循环体语句一次也不 执行的情况 。 图 为 。一 语句的 流程图 。 的初值 , 再检查循环条件表达式 的 结果 , 当满足循环条件时就执行循环体 语句并计算更新表达式 , 然后再根据 更新表达式 的计算结果来判断循环 条件 是否满足 · · · · · 一直进行到循环 条件表达式 的结果为假 值 时 , 退 出循环体 。 图 为 语句的流程图 。 求解表达式 表达式 成 、、 立 , 二 二 二 二 一 , 二 二 二 , 语句段 求解表达式 一 」 霭茁戈不菇百 一 〕③ 进入 一 循环 语句段 在 语言程序的循环结构中 , 语句的使用最为灵活 , 它不仅可以用于 循环次数已经确定的情形 , 而且可以用 于循环次数不确定而只给出循环结束 条件的情况 。 另外 语句中的 个表 达式是相互独立的 , 并不一定要求 个表达式之间有依赖关系 。 并且 语 句中的 个表达式都可能缺省 , 但无 论缺省哪一个表达式 , 其中的两个分号 都不能缺省 。 例如 , 我们要 把 一 之 间的 偶数取出相加 , 用 语句就显得十 分方便 。 礴餐邵聋舞扮 条件成立 ② 退出 一 ‘’·循环 语句 采用 语句构成循环结构的一 般形式如下 初值设定表达式 循环条件 表达式 」【更新表达式 语句 语句的执行过程是 先计算出 初值表达式 的值作为循环控制变量 用 语句求 一 之间的偶数 之和并将结果在 字符液晶 试验板上输出显示 。 在我的文档中建立一个文件 目录 , 然后建立 的工程项 目 , 最后建立源程序文件 。 输入下面的程序 序号 以下同 一 【 」 , , , , , , 卜 「 【 编译通过后 , 将生成的 文 件烧录到 芯片中 , 将芯片插入到 门 字符液晶试验板上 , 试验板上 接通 电源 , 个数码管显示 一 之间的偶数之和的结果“ 。”。 下面分析程序 。 序号 程序解释 , 以下同 包含头文件 序号 一 数据类型的宏定义 。 序号 数码管 一 的字形码 。 序号 程序分隔 。 序号 一 延时子函数 。 序号 程序分隔 。 序号 一 , 延时子函数 。 序号 程序分隔 。 序号 , 定义函数名为 的主函数 。 序号 旧 主函数开始 。 序号 , 定义无符号整型变量 、 。 序号 川 循环语句 。 序号 数学计算 。 序号 分隔 。 序号 循环语句进行无限循环 , 用于点亮 个数码管 。 序号 主函数结束。 · 。话句 。 语句是 一 个无 条件转 向语 句 , 它的一般形式如下 语句标号 © 1994-2008 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net 学 习 单 片机 阅皿翔颐胜两叫种 其中语句标号是一个带冒号“ ”的 标识符 , 标识符标识语句的地址 。 当执 行跳转语句时 , 使控制跳转到标识符指 向的地址 , 从该语句继续执行程序 。 将 语句和 语句一起使用 , 可以构 成一个循环结构 。 但更常见的是在 语言程序中采用 。 语句来跳出多重 循环 , 需要注意的是只能用 。语句 从内层循环跳到外层循环 , 而不允许从 外层循环跳到内层循环 。 语句和 语句 上面我们介绍的三种循环结构都 是当循环条件不满足时 , 结束循环的。 如果循环条件不止一个或者需要中途 退出循环时 实现起来比较困难 。 此时 可以考虑使用 匕 伙语句或 语句 。 语句 语句除了可以用在 语句中 , 还可以用在循环体中。 在循环 体中遇见 语句 , 立即结束循环 , 跳到循环体外 , 执行循环结构后面的语 句 。 鸽 语句的一般形式为 语句只能跳出它所处的那 一层循环 , 而不像 。 语句可以直接 从最内层循环中跳出来 。 由此可见 , 要 退出多重循环时 , 采用 。语句比较 方便 。 需要指出的是 , 匕 语句只能 用于开关语句和循环语句之中 , 它是一 种具有特殊功能的无条件转移语句 。 语句 语句也是一种中断语句 , 它一般用在循环结构中 , 其功能是结束 本次循环 , 即跳过循环体中下面尚未执 行的语句 , 把程序流程转移到当前循环 语句的下一个循环周期 , 并根据循环控 制条件决定是否重复执行该循环体 。 语句的一般形式如下 语 句 和 语 句 的 区 别 在 于 语 句 只 结 束本 次 循 环 而 不是 终 止 整个 循 环 的执 行 语 句则是 结 束整个循环 , 不再进行条件判断 。 最后 , 我们来做 与 语句的对比实验 , 感性认识一下它们的 区别 。 卖茵茜扮曝纷 用 语 句在 字符液 晶试验板上做一个 一 递增数值测 试 , 当数值小于 时 , 用 匕 语句 结束循环 。 在我的文档中建立一个文件 目录 , 然后建立 的工程项 目 , 最后建立源程序文件 。 输入下面的程序 序号 以下同 【 」二 , , , , , , , , 二 二 二 二 二 , 二 二 下 【 〕 二 」 编译通过后 , 将生成的 文件烧录到 芯片中 , 将芯片插 入到 字符液晶试验板上 , 试 验板上接通 电源 , 右边一个数码管 显示 ”。 分析一下程序 。 序号 程序解释 , 以下同 包含头文件 。 序号 一 数据类型的宏定义 。 序号 数码管 一 的字形码 。 序号 程序分隔 。 序号 一 延时子函数 。 序号 程序分隔 。 序号 一 延时子函数 。 序号 程序分隔 。 序号 定义函数名为 的主函数 。 序号 主函数开始 。 序号 定义无符号字符型变量 并赋初 值 序号 右边一个数码管显示 ”。 序号 延时 秒 。 序号 循环语句 。 序号 循环语句开始 。 序号 如果 」、于 , 用 语句退 出 循环 。 序号 右边一个数码管显示 的值 。 序号 延时 秒 。 序号 循环语句结束 。 序号 语句构成的死循环 , 程序原 地踏步 , 动态停机 。 序号 主函数结束 。 小结 由于在 』、于 时 , 语句已跳 出 「循环圈 结束循环 , 因此不能显示 一 实验五群 用 语句在 字符液晶 试验板上做一个 一 递增数值测试 , 当数值小于 时 , 用 语句结 束本次循环 进入下一次循环 。 在我的文档中建立一个文件 目录 , 然后建立 的工程项 目 , 最后建立源程序文件 。 输入下面的程序 日 序号 以下同 一 旧 旧 【 」 , , , , , , , 二 二 二 一 , 一 · 二 二 二 〕 了 © 1994-2008 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net 班翔侄居加圈崎口卜一 , 学 习单 片机 ⋯革片机系统的议计 ’ 二 —从家用 多功 能定时控制黑电路设计 , 谈单片机 系统 的硬件电路设计 的 方 法 令 陈阳海 语音电路 、庄 、红外接收 及输出驱动电路 语 音 芯 片 很 多 , 本设 计 采 用 户 , 所需语音信号已预先录入 。 图 是其引脚图 , 图 是其在 尸 控制模 式下的典型接线图 , 一 选择 段 语音 , 下为放音触发端 。 从图 可知 , 对 段语音的控制需占用单片机的 根 口线。 关于 的详细资料 , 请参考相关文章或上网查询 。 单 片机片内不含 , 需要外扩 。 此 处选 用存储容量 为 字节的串行 , 它通过 和 与单片机进行通信 , 尸端为写保护 , 用 单片机控制该端 口 , 可减少误写 , 提高 可靠性 。 可见控制 要占单片机 的 根 口线。 红外接收采用一体化的红 外接收头 , 其输出接至单片机 , 需要占用一个 口 。 输出驱动电路由 三极管驱动电路和继电器等组成 。 继电 器的触点通过接插件引出 , 以便控制相 关电器 。 温度检测电路 实现温度检测的方法很多。这里我 们采用负温热敏电阻 作温度传感 器 、 用 组成的单稳电路作温度 检测电路 , 当电容器 的容量固定时 , 其单稳脉冲的宽度与 的阻值成正 比 , 单片机先输出单稳触发信号 , 然后 检测单稳脉冲的宽度并查表 , 便可求得 表 ⋯ ⋯ 一 【 一 ⋯ ⋯ ⋯⋯ 编译通过后 , 将生成的 文件烧录到 芯片中 , 将芯片插 入到 字符液晶试验板上 , 试 验板上接通 电源 , 右边一个数码管 开始显示 ” , 随后显示 与一 ’’。 下面分析一下程序 。 序号 程序解释 , 以下同 包含头文件 。 序号 一 数据类型的宏定义 。 序号 数码管 一 的字形码 。 序号 程序分隔 。 序号 一 延时子函数 。 序号 程序分隔 。 序号 一 , 延时子函数 。 序号 程序分隔 。 序号 定义函数名为 门 的主函数。 序号 门 主函数开始 。 序号 定义无符号字符型变量 并赋 初值 序号 右边一个数码管显示 罗 。 序号 延时 秒 。 序号 循环语句 。 序号 循环语句开始 。 序号 如果 小于 , 用 旧 语句 退出 循环 。 序号 右边一个数码管显示 的值 。 序号 延时 秒 。 序号 循环语句结束 。 序号 语句构成的死循环 , 程序原 地踏步 , 动态停机 。 序号 主函数结束。 小结 由于在 、于 时 , 旧 语句 跳出 语句的本次循环 , 进入下一次循环 , 因此不能显示 一 , 但可显示 一 配 文 优 惠 邮 购 集成开发环境 已汉化正式版 光盘 , 邮购代号 元 。 多 功 能编程 器 邮购代号 元 。 图形液晶试验板 邮购代 号 元 。 字符液晶试 验板 邮购代号 元 。 字符 型 液 晶显 示模组 邮购代号 元 。 点阵图型液晶显示模组 邮 购代号 元 。 高稳定专用稳 压 电源 邮购代号 元 。 每次邮 费保价费 元 。 开发票另加货款 汇款时注明 邮购时只 需在附言栏 中 写明邮购代号及数量并附上联系电话 即可 。 邮局汇款邮购 上海市阂行区莲 花 路 弄 号 室 , 邮 编 , 联系人 吕超亚 , 银行汇款购买 汇款后 电话告知 户名 上海红棱 电 子有限公司 , 开户行 上海浦 东发展银 行 闺 行 区 吴 中路 支 行 , 帐 号 一 , 电话 传 真 一 , , 网 址 , 技术 支持 一 扮 。 二 © 1994-2008 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net
本文档为【10手把手教你学单片机的C语言程序设计_开关语句和循环语句】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_201064
暂无简介~
格式:pdf
大小:472KB
软件:PDF阅读器
页数:6
分类:互联网
上传时间:2011-06-14
浏览量:27