-C 语言程序设计.ppt_第1页
-C 语言程序设计.ppt_第2页
-C 语言程序设计.ppt_第3页
-C 语言程序设计.ppt_第4页
-C 语言程序设计.ppt_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、+语言程序设计,主讲教师:林清滢 授课对象:软件工程专业,第 1 章 概 述 Chapter 1 Introduction,教学内容 程序设计语言发展 过程化程序设计 对象化程序设计 C+编程流程, 程序设计语言发展,机器语言 汇编语言 高级语言,在程序设计语言发展初期的十来年中,人们对语言研究的注意力主要放在新语言成分及拥有新的语言成分的语言上,而极少从软件开发及程序设计方法的角度来设计语言。1968年E.W.Dijkstra给COMM.ACM杂志编缉写了一封信,指出了语言中转向语句使用上带来的问题,从而引发了程序设计语言中要不要使用转向语句的讨论,这场讨论使人们开始注重对程序设计方法进行研

2、究,从而导致了结构化程序设计这一新的程序设计方法问世 结构化程序设计语言:Pascal 、C,1970年,AT 1983年正式取名为C+;从1989年开始C+语言的标准化工作;于1998年11月被国际标准化组织(ISO)批准为国际标准,成为目前的标准C+。 当面向对象技术得到认可后,许多支持面向过程方法和结构化程序设计方法的语言,如 Pascal、Basic等,也都和C语言一样,扩充了对面向对象技术的支持。这样的程序设计语言有Delphi 、Visual Basic等。,同时,随着Internet网络的快速发展,网络编程语言需求越来越大,1995年SUN公司推出了Java语言。Java语言是一

3、种纯粹型面向对象程序设计语言,Java语言的最大特点是跨平台性和安全性。Java语言在电子商务等方面的应用非常广泛。,标准C+优势: 标准C+具有更强的可移植性,丰富的标准库资源,使它更能抽象和便捷地编程。 C+是一种编程灵活、运行效率高,它可进行多种方法编程;既可用于面向过程的结构化程序设计,又可用于面向对象的程序设计。适用于商业处理、科学计算、系统应用等重要领域。,过程化程序设计,1. 基于过程的程序设计 在二十世纪五六十年代,一个软件项目往往是由单个人独立完成,当时人们认为写出的程序只要能在计算机上得出正确的结果,程序的写法可以不受任何约束。然而对于大型的、需要多人完成的项目,这种作坊式

4、的开发方法显然行不通。于是人们开始尝试把其它工程领域中行之有效的方法应用到软件开发中来,2. 结构化程序设计 在二十世纪六七十年代,Yourdon E. 和 Constantine L. 等人借鉴工厂利用流水线组织生成的方法,提出了结构化程序开发技术,利用抽象模型的概念,按照数据传递、变换的关系,自顶向下、逐层细化地将系统分解成层级结构的模块,每个模块实现为一个函数或过程。 这种方法最大的特点是数据和过程的分离,整个系统由一组被动的数据和一组能动的过程组成,其中数据表示某种信息,而过程完成对数据一定的处理。 系统运行时,输入的数据从一个过程流向下一个过程,这好比流水线上的生产资料和半成品从一个

5、工段到下一个工段。,程序控制结构,设计思路: 自顶向下、逐步求精,采用模块分解。 程序结构: 按功能划分为若干个基本模块,形成一个树状结构。 各模块间的关系尽可能简单,功能上相对独立; 每一模块内部均是由顺序、选择和循环三种基本结构组成,优点: 能有效地将一个较复杂的程序系统设计任务分解成许多易于控制和处理的子任务,便于开发和维护。 缺点: 可重用性差、难以开发大型软件 把数据和处理数据的过程分离为相互独立的实体,当数据结构改变时,所有相关的处理过程都要进行相应的修改。程序=(算法)+(数据结构),例如:考虑一个银行系统,该系统允许顾客开设不同类型的银行账户,包括现金账户、支票账户和贷款账户,

6、同时允许顾客存款、取款和转帐。 首先考虑数据结构: struct account char *name; / 账户 unsigned long accountId; / 账号 float balance; /余额 float interestYTD; / 年利息 char accountType; / 账户类型(现金x、支票z和贷款d) ;,再考虑用三个过程分别负责存款、取款和转帐。我们可以三个C函数: MakeDeposit ( ) WithDraw ( ) Transfer ( ) 这种数据结构与过程分离有很多问题,例如增加一种账户类型工资账户(g),则三个函数都必须重新编写。,对象化程序

7、设计方法,对象是OOP方法中最基本和最核心的概念。 从程序设计的本质上看:对象是把数据和处理数据的过程当成一个整体。 (在C+中,对象=数据+函数) 类是OOP方法中程序设计的主体。 对同一类型对象抽象出其共性,形成类。 类是对象的抽象,而对象是类的实例,C+编程流程,在Windows 环境下支持C+的集成开发环境有: Microsoft Visual C+ 6.0 (VC6) Borland C+ Builder 6.0 (BCB6) Microsoft Visual C+. NET,一、在BCB6中开发C+程序: 1、创建Console工程(控制台应用程序),系统将会创建源程序文件(.cp

8、p)、工程文件(.bpr) 注:对于多个工程的应用程序,将会创建工程组文件(.bpg) 2、工程管理可选择菜单(View|Project Manager)弹出工程管理窗口进行管理。,3、编程过程 编辑:将C+语言源程序通过键盘输入到计算机中,并以文件的形式存入到磁盘中(.cpp) 编译(compile):即将源程序翻译成机器语言程序的过程。编译出来的程序称为目标程序(.obj) 连接(link或make或build):编译后生成的目标文件经过连接后生成最终的可执行程序(.exe) 运行或调试 注:make:若文件有更改过,则会编译你这一次更改过的文件,然后连接。 build:是对所有文件全部重

9、新编译后链接。,二、最小样板程序 /在屏幕上输出Hello World并换行 #include int main() std:coutHello World.n; ,C+为了解决名称的冲突,使用名空间机制,C+标准库提供的类和函数都是在std名空间中声明的,因为cout是C+标准库中的输出流类对象。,预编译指令 声明该程序要使用的外部文件iostream.h ,该文件包含了输入cin和输出cout的定义。 在程序编译之前把指定文件内容复制到此处,注释 第一种形式: 以 ” / ” 开始至行末,注释 第二种形式: /* 之间可括住多行 */,函数是C+程序基本运行单位,一般形式为: 类型 函数名 ( 参数表 ) 语句序列 C+程序中有且仅有一个main函数,/在屏幕上输出Hello World并换行 #include using namespace std; /使得后面的名称若没有定义,则会/自动至std的名空间中去找 int main() coutHello World.n; ,三、C+程序的结构特点,1、C+程序是由函数组成。必须有一个main函数,main函数可位于程序的任何位置。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论