




已阅读5页,还剩18页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1章程序设计基本概念 本章要点 1 1程序和程序设计1 2算法1 3结构化程序设计和模块化结构 1 1 1C程序程序是指人们存储在计算机内部存储器中 可以连续执行的一条条指令的集合 它是人与机器进行 对话 的语言 也就是我们常说的 程序设计语言 C语言是一种 高级语言 另外的BASIC PASCAL等也属于高级语言 这些语言都是接近人们习惯的自然语言和数学语言作为语言的表达形式 人们学习和操作起来感到十分方便 但对于计算机本身来说 它并不能直接识别由高级语言编写的程序 它只能接受和处理由0和1的代码构成的二进制指令或数据 由于这种形式的指令是面向机器的 因此也称为 机器语言 我们把由高级语言编写的程序称为 源程序 由二进制代码表示的程序称为 目标程序 而 编译程序 是指可以把源程序转换成目标程序的软件 即可以把用户按规定语法写出的语句逐一翻译成二进制的机器指令 每一种高级语言都有它对应的编译程序 每条C语句经过编译 Compile 最终都将转换成二进制的机器指令 由C语言构成的指令序列称C源程序 按C语言的语法编写C程序的过程 称为C语言的代码编写 C语言源程序经过编译后生成一个后缀为 OBJ的二进制文件 称为目标文件 最后还要由 连接程序 Link 将此 OBJ文件与C语言提供的各种库函数连接起来生成一个后缀为 EXE的可执行文件 在DOS状态下 只须打入此文件的名字 不必打入后缀 EXE 就可以运行 重点提示 高级语言编写的程序称为 源程序 二进制代码表示的程序称为 目标程序 而 编译程序 是指可以把源程序转换成目标程序的软件 每条C语句经过编译 Compile 最终都将转换成二进制的机器指令 OBJ的文件 最后由 连接程序 Link 将此 OBJ文件与C语言提供的各种库函数连接起来生成一个后缀为 EXE的可执行文件 1 1 2程序设计简单的程序设计一般包括 1 根据要求确定存放数据的数据结构 2 针对数据结构来确定完成任务的步骤 即确定算法 3 根据1和2使用选定的计算机语言编写程序代码输入到计算机中 即编程 4 调试程序 消除语法或逻辑错误 用各种可能的输入数据对程序进行测试 对不合理的数据能进行适当的处理 5 整理并写出文档资料 1 2算法 在编写程序时 除了选定合理的数据结构外 还需要十分关键的一步就是设计算法 有了一个好的算法 就可以用任一种计算机高级语言把算法转换为程序 算法是指为解决某个特定问题而采取的确定且有限的步骤 一个算法应具有以下五个特性 1 有穷性 2 确定性 3 可行性 4 有零个或多个输入 5 有一个或多个输出 例1 输入两个数a和b 要求实现将a和b中的数据进行交换 算法描述 12 5 a b t 1 定义三个变量a b t 2 输入a和b的值 3 t a a b b t 4 输出a和b 5 1算法的概念和使用举例 一 三个典型实例 main floata b t scanf f f 思考题 从键盘输入两个数 将这两个数按照从小到大的顺序输出来 比如输入5和1 则输出结果为1 5 例2 从键盘输入三个整数 将这三个整数按照从大到小的顺序输出来 比如 如果输入34 12 89 则输出为89 34 12 1 定义四个变量a b c t 2 输入a b c的值 3 如果b a 则 t b b a a t 4 如果c a 则 t c c a a t 5 如果c b 则 t c c b b t 6 输出a b c的值 例3 编写一个程序 求1 3 5 99 1 3 5 7 9 99 假设用S表示乘积结果 用i表示被乘数 S 1 i 1 1 定义2个变量S和i 2 S 1 i 1 3 S S i i i 2 4 如果i 99 返回3继续否则 转到5 5 输出s 算法一般可以用以下三种方法来进行描述 1 伪代码 它是一种近似高级语言但又不受语法约束的一种语言描述 2 流程图 它也是描述算法的很好的工具 传统的流程图由图1 1中所示的几种基本框架组成 图1 1流程图基本框架由这些框和流程线组成的流程图来表示算法 形象直观 简单方便 但这种流程图对于流程图的走向没有任何限制 可以任意转向 在描述复杂算法时不易阅读 3 N S流程图 这种流程图完全去掉了流程线 算法的每一步都用一个矩形框来描述 把一个个矩形框按执行的次序连接起来就是一个完整的算法描述 在下一节结合三种基本的结构化程序设计来介绍这种流程图的基本结构 一般我们最常用的描述方法是伪代码和流程图 重点提示 算法的5个特性分别是 有穷性 确定性 可行性 有零个或多个输入以及有一个或多个输出 1 3结构化程序设计和模块化结构 1 3 1结构化程序结构化程序由三种基本结构组成 1 顺序结构顺序结构的程序在执行时按照先后顺序逐条进行 没有分支 没有转移 如后面章节中介绍的赋值语句 输入 输出语句等都可以构成顺序结构 顺序结构可用图1 2所示的流程图表示 图1 2顺序结构流程图 2 选择结构选择结构的程序要根据不同的条件去执行不同分支中的语句 如后面章节中介绍的if语句 switch语句等可以构成选择结构 选择结构可用图1 3所示的流程图表示 图1 3选择结构流程图 3 循环结构不同形式的循环结构要根据各自的条件 使同一组语句重复执行多次或一次也不执行 循环结构包括当型循环 如图1 4所示 和直到型循环 如图1 5所示 当型循环的特点是 当指定的条件满足时 就执行循环体 否则就不执行 直到型循环的特点是 执行循环体直到指定的条件满足 就不在执行循环 图1 4当型循环 图1 5直到型循环 重点提示 结构化程序由三种基本结构组成 顺序结构 选择结构和循环结构 1 3 2模块化结构计算机在处理复杂任务时 常常需要把这个大任务分解为若干个子任务 每个子任务又分成很多个小子任务 每个小子任务只完成一项简单的功能 在程序设计时 用一个个小模块来实现这些功能 我们称这样的程序设计方法为 模块化 由一个个功能模块构成的程序结构就称为模块化结构 模块化结构可以大大提高程序编制的效率 软件人员在进行程序设计时 首先应集中考虑主程序中的算法 写出主程序后再逐步完成子程序的调用 而对这些 子 程序也可以用调用主程序的方法逐步完成其下一层
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 学校物资库管理制度
- 学校营养餐管理制度
- 学生休复学管理制度
- 学生请销假管理制度
- 安保部卫生管理制度
- 安全监测与管理制度
- 安费诺公司管理制度
- 定制店员工管理制度
- 实训室学生管理制度
- 审核岗薪酬管理制度
- 2024年甘肃兰州中考满分作文《砥砺前行扎根未来》
- 《特种设备重大事故隐患判定准则》知识培训
- EOD项目如何立项
- 2025中考复习必背初中英语单词1600打印版(上)
- 《LCD生产工艺》课件
- 《大学英语》课件-UNIT 3 In the workplace
- 2025年河南省机场集团有限公司招聘笔试参考题库含答案解析
- 旅游景区管理制度完整汇编
- 2024汽车行业数字化用户运营解决方案
- 国开00506+11849公共部门人力资源管理期末复习资料
- 政府采购评审专家考试题库(完整版)
评论
0/150
提交评论