- 1、本文档共51页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C++支持面向对象程序设计-Read.ppt
目 录 第一章 软件设计概述 第一章 软件设计概述 1.1 软件与软件危机 什么是软件 1.1 软件与软件危机 1.2 软件工程 软件危机的 出现迫使人们重新认识软件和软件开发过程。 大型软件开发也应该借鉴建筑、机械等行业的发展过程,由“手工方式”向“工程化”方向发展。1968年在北大西洋公约组织(NATO)的年会上首次提出软件工程的概念,此后又逐步提出软件生命期的概念。 1.2 软件工程 1.2 软件工程 1.2 软件工程 1.2 软件工程 1.3 程序设计方法 1.3.1 传统的结构化程序设计 1.3.1 传统的结构化程序设计 1.3.1 传统的结构化程序设计 1.3.1 传统的结构化程序设计 1.3.2 面向对象的程序设计 1.3.2 面向对象的程序设计 面向过程程序设计缺点的根源在于数据与数据处理分离。 面向对象程序设计模拟自然界认识和处理事物的方法,将数据和对数据的操作方法放在一起,形成一个相对独立的整体——对象(object),同类对象还可抽象出共性,形成类(class )。一个类中的数据通常只能通过本类提供的方法进行处理,这些方法成为该类与外部的接口。对象之间通过消息(message)进行通讯。 1.3.2 面向对象的程序设计 基 本 概 念 1 基 本 概 念 1 基 本 概 念 基 本 概 念 面向对象的软件开发方法 面向对象的软件开发方法 “面向对象”程序设计的特点 3 “面向对象”程序设计的特点 3 “面向对象”程序设计的特点 “面向对象”程序设计的特点 “面向对象”程序设计的特点 继承和多态性组合,可以生成很多相似但又独一无二的对象。继承性使得这些对象可以共享许多相似特性,而多态又使同一个操作对不同对象产生不同表现形式。这样不仅提高了程序设计的灵活性,而且减轻了分别设计的负担。 1.4 算法的设计与分析 1.4.1 算 法 的 概 念 1.4.2算法的表示及三种基本结构 1.4.2算法的表示及三种基本结构 1.4.2算法的表示及三种基本结构 1.4.2算法的表示及三种基本结构 1.4.3 常用算法介绍 1.4.3 常用算法介绍 1 直接法 1.4.3 常用算法介绍 2 枚举法 1.4.3 常用算法介绍 1.4.3 常用算法介绍 1.4.3 常用算法介绍 1.4.3 常用算法介绍 1.4.3 常用算法介绍 3.递推法 1.4.3 常用算法介绍 1.4.3 常用算法介绍 1.5 C语言与面向对象的C++ 1.5 C语言与面向对象的C++ 1.5 C语言与面向对象的C++ 1.5 C语言与面向对象的C++ 1.6 一个简单的C++程序 1.4.1 算 法 的 概 念 1.4.3 常 用 算 法 介 绍 1.4.2 算 法 的 表 示 通俗地说,算法就是解决问题的步骤。 算法是程序设计学习的重点。 用计算机解决问题的算法应具有以下特征: 可执行性 确定性 有穷性 可输入输出信息 3 循 环 结 构 1 顺 序 结 构 2 分 支 结 构 num1?15; (1) 顺序结构 【例1.1】 求两数之和。 块1 块2 块3 流程图 寄存器 35 + 显示结果:35 num1 15 num2 20 sum 35 num2?20; sum?num1+num2; 演示算法执行过程 输出sum; (2) 分支结构 【例1.2】 输入三个数,输出其中的最大数。 x?7; y?12; z?10; if(xy) max?x; else max ?y; if (zmax) max?z; 输出max; x 7 y 12 z 10 CPU max 12 比较 比较 显示结果:12 流程图 条件 块1 块2 真 假 演示算法执行过程 (3) 循环结构 流程图 条件 块 真 假 【例1.3】求4个整数的和。 0 sum 4 count 12 x 显示结果:59 演示算法执行过程 12 3 14 26 2 16 42 1 18 60 0 count?4; //整数个数 sum?0; //累加和的初值 while (count0) { x?输入一个整数; sum?sum+x; count?count-1; } 输出sum; 1. 直接法 2.枚举法 3.递推法 解决的问题的种类与复杂程度各不相同决定了算法的多样性,但从其思想方法上可以将其归为以下几种:直接法、枚举法、递推法、递归法、回溯法等等。本节 将介绍以下三种:
文档评论(0)