- 1、本文档共24页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第1章 程序设计的基本原理 §1.1 程序设计概述 广西大学土木工程学院 李秀梅 制作 软件危机 软件危机首次爆发于二十世纪六十年代。在大型程序设计中,人们发现投入大量的人力、物力、时间开发出的软件,其成本、效率、质量等方面却处于失控状态,尤其软件维护异常困难。程序的修改扩充往往需要大量重复性投入。 一. 程序设计的特点 二、程序设计的过程 三、程序设计的准则 对于大型软件 重要的实时控制程序(导弹、卫星) 一般应用程序 临时性程序 总结: 对于不同规模、用途的软件,对以上准则要求的侧重点有所不同,但对于所有程序,其正确性永远是第一位的,其次是效率。 良好的程序设计习惯:以简单明了的方式编写程序。 效率最高; 可读性最好; 语句最少; 通用性最好; 效率最高; 可读性最好; 语句最少; 通用性最好; §1.2 程序设计的基本原理 一、抽象 计算机用抽象的数字、逻辑符号来进行处理; 源程序—转化为机器代码,即转化为计算机动作的抽象; 问题求解的抽象; 二、子目标 数据的抽象—数据类型; 控制的抽象—流程控制; 函数内部:由流程控制语句控制; 函数之间:由函数调用来控制; 计算模型的抽象—实际问题化简为计算模型; 程序设计方法的抽象—如何构造程序; 三、模块化 一般是指按功能划分的函数模块; 每个函数拥有自己独立的数据,模块之间的耦合力很小,利于程序的维护; 模块之间的数据交换是通过函数的接口实现的; 三、程序设计的发展 面向机器的程序设计方法 用机器语言和汇编语言编写的程序。 结构化程序设计方法 用C、BASIC、FORTRAN 等高级语言编写的结构化程序。程序语言与解题方法相结合,程序设计看成是对数据的加工过程。 面向对象的程序设计方法 用VC++、VB,Power Builder 等面向对象的程序设计语言编写程序。该方法成为程序发展的主流。 四、C语言的特点 语言简洁、紧凑、使用方便灵活。(32个关键字,9种控制语句) 运算符丰富;(32种) 数据结构丰富,具有现代语言的各种数据结构。 用C语言编写的程序的可移植性好,适用于各种型号的计算机和操作系统。 C语言允许直接访问计算机物理地址,可直接对硬件操作。具有高级、低级语言的双重性。 生成的目标代码质量高,程序执行的效率高。 具有结构化的控制语句,是理想的结构化语言。 Visual c++ 6.0 开发环境 建立新项目(project) file?new ? project ? Win32 console Application Visual c++ 6.0 开发环境 建立c源文件(file.c) file?new ? file ? c++ source file 良好的程序设计习惯 以简单明了的方式编写C程序。 阅读所用的C版本手册,了解特点。 计算机和编译器是很好的教员,多试多练。 适当添加注释语句,增加程序的可读性。 采用函数式的模块化设计,除函数接口外减少函数之间的信息交换。 把函数及变量的声明语句放在头文件中。 * * 程序设计 C语言 软件危机产生的原因主要有三个: 2. 软件是一种逻辑产品而非物理产品,软件的开发过程本质上是人的思考过程。 3. 人的智力在面对越来越复杂的问题时,处理问题的效率会越来越低。 1. 软件开发者不熟悉用户问题的领域,或没有理解用户需求,软件产品与要求不一致。 软件危机的 出现迫使人们重新认识软件和软件开发过程,认识到程序设计原理和方法的重要性。 1968年在北大西洋公约组织(NATO)的年会上首次提出软件工程的概念。 严谨性 叠加性 可靠性 抽象性 定义问题 设计问题 程序编码 程序测试 —— 建立程序的系统结构、算法; —— 用计算机语言编写源程序; —— 通过调试和考题检验程序 的正确性。 ——建立程序的规格说明; 1. 可靠性 3.有效性 2.简明性 5.适应性 4.可维护性 —— 正确性,靠测试验证;使用程序过程中不失败的概率. ——要求程序代码简明易读. —— 程序占用资源少,运行时间短,与软硬件环境有关. ——改正软件错误,因运行环境变化或软件功能扩充而对软件进行改动。 ——关键在于程序的模块化、局部化和可读性; ——软件开发尽可能远离机器特征,通用性好,应用范围广。 可靠性 有效性 适应性 简明性 可维护性 可靠性 有效性 简明性 可维护性 可靠性 有效性 简明性 可维护性 可靠性 有效性 简明性 LI_1.C 思考题:生成并输出10×10的单位矩阵. 考虑一下因素: 思考题:生成并输出以下矩阵. 考虑一下因素: examp.c 程序设计 问题 解答 数据 源程序 机器代码 程序设计 语言软件 执行程序 人们对数据分析解释 通过图形软件变换 将问题分解为若干小问题,求解这些小问题就是子
文档评论(0)