单片机程序设计补充.docxVIP

  • 1
  • 0
  • 约2.3千字
  • 约 14页
  • 2019-09-27 发布于广东
  • 举报
程序设计方法 \问题求解 步骤:问题分析T建立数据模型T设计算法T编辑T调试 和测试9文档整理 二、算法和二种基本程序结构 程序二数据结构+算法 数据结构:程序中(用到的)数据的类型和组织形式。(数 据描述) 算法:问题求解的方法和步骤。(操作描述) 三、算法的描述: 一个程序只能由(只需由)三种基本控制结构(顺序、选 择、循环结构)组成。 流程图:使用图形符号、数学语言和自然语言相结合 的方法表示的算法。 N—S图:每一种基本算法对应一个矩形框,矩形框的 上下排列作为执行的顺序。 PAD问题分析图:三种基本算法的图形由上下和左右 连线进行连接,形成一个树形图。执行过程为:从根 结点开始,对分枝结点从上到下,对每一个结点先向 右展开执行,即按“遍历树”的结点次序进行。 伪代码:用介于自然语言和计算机语言之间的文字符 号来描述算法。 四、 程序和程序设计语言 程序:是问题求解的指令系列。 程序设计语言:机器语言、汇编语言、算法语言(高 级语言)。 计算机能直接识别(执行)的语言是机器语言。 对于用汇编语言和高级语言编写的程序,必须先经过专 门的软件翻译成机器语言后,才能被计算机执行。 五、 程序设计方法 结构化程序设计(面向过程程序设计) 方法:自顶向下、逐步细化和模块化。 首先把求解的问题划分成几个尽可能大的部分(能划 分成两部分就不要划分成三部分),再对每一个部分进一步 划分,直至不能再分为止。各个部分按划分的次序连接就 形成一个层次结构,每个部分作为一个模块,对最底层的 模块用算法来描述。 任何问题都可以仅用三种基本的控制方法来实现: 顺序控制、选择控制、循环控制。 例:从三数中取大数。 ① 输入三个数给 a, b, c scant (“%d %d %cT,a, b, c); ②从a, b, c中找出最大的数赋给max max=max3(a, b, c); ③输出 max printf (“max=%cT,max); 一般的算法我们都可以分为三大部分: 输入数据或初始化数据, 对数据进行运算和处理, 输出运算处理后的结果。 面向对象程序设计 面向过程:算法(程序)和数据结构是独立存在的。一个 数据(结构)可以被若干个程序进行运算和处理。 问题1:当其中的一个程序对数据的结构进行扩充,其他 的程序也必须修改程序以适应扩充了的数据结构。 问题2:如何确认与这个扩充了的数据结构有关的程序(当 这些程序不是同一个人编写的)。 面向对象: 1).把操作同一个数据(结构)的所有程序与这个数据 (结构)“封装在一起,作为“对象”来引用。 2) .当某个程序需扩充数据结构时,使用“继承的方 法既可以实现,不必修改与之有关的其他程序。 3) .多态性,使得程序设计更加灵活。 结论: 1.面向对象是面向过程的进一步扩展,而不是取代。即 面向过程是面向对象的一个组成部分。 2?“对象中的程序仍然需使用面向过程的方法进行设 计。 算法的描述: 例从中山路搭21路公交车回师院。 要求处理:1■避免搭错车2?已无班车3?车抛锚 用伪代码进行描述: 1 ?开始 2 ?等车 3上车 4 ?乘车 ?抵达 ?结束 处理避免搭错车和车抛锚 2 ?等车 2.1有车进站吗?有,转到3/I 2.2 (没车进站)转到2.1 3上车 3.1是21路车吗?不是,转到2?1 3.2 (是)上车 4 ?乘车 4.1半路抛锚?没,转到5?1 4.2 (抛锚)下车等待修理 4.3修好了吗?没,4.4 (修好)上车 4.3修好了吗?没, 4.4 (修好)上车 5.1抵达 处理已无班车的情况 2.1有车进站吗?有,转到3/I 22 (没进站)转到2?1 2.2.1已无班车了吗?还有,转到2?1 (已没了)打的 转到 5.1 3.1是21路车吗?不是,转到2/I (是)上车 4.1半路抛锚?没,转到5?1 (抛锚)下车等待修理 4.2.1要换乘其他车吗?不,转到4.3 (要)打的 转到 5.1 4.3修好了吗?没,转到421 4.4 (修好)转到3.2 5.1抵达 例2:在食堂买饭菜坐着进食。 要求处理:1?钱不够2?没座位3?食间口渴4?没吃饱 用伪代码进行描述: 1 ?开始 ?买菜 ?找座位 ?进食 ?结束 处理1?钱不够 2 ?买菜 2.1点菜 2.2钱够吗?够,转到2.4 2?3(不够)借钱(卡充值),转到2?1 2.4付钱(刷卡) 处理2?没座位 3 ?找座位 3.1找座位 3.2有位?没有,转到3.1 ④处理3?食间口渴4?没吃饱 4 ?进食 4.1进食 4.2 口渴?不是,转到4.5 4?3(是)有汤吗?有,转到4.5 4.4 (没)买汤 4.5吃完了吗?没,转到4?1 4.6没吃饱吗?是,转到2?1 5.1结束 流程图: 流程图:□ -—) 半座位 N~^

文档评论(0)

1亿VIP精品文档

相关文档