C语言程序设计----第一章 概述
第一章 概述
1.1. 计算机发展
计算机发展(4个发展时代)
电子计算机经历的四个发展时代:
第一代:20世纪50年代,主要采用真空电子管制造计算机。
第二代:20世纪50年代末期,出现了以晶体管为主要元件的第二代计算机。
第三代:1964年,IBM公司推出了世界上第一个采用集成电路的通用计算机系列IBM360系统研制成功,并垄断了60%~70%的国际市场, 它的出现标志着计算机进入第三代。
第四代:90年代至今,随着大规模集成电路和微处理器的出现,计算机进入第四代。
注意:
世界上第一台现代意义上的计算机于1946年在美国问世,其名称是ENIAC电子数字积分计算机,它的主要原件是电子管。在ENIAC问世的同时,冯·诺伊曼提出了存储程序的概念。
1.2. 计算机语言
机器语言
汇编语言
高级语言
1.3. 算法及其描述方法
算法定义:解决问题的步骤序列就是算法
算法必须具备的五个特征:
1、可执行性
2、确定性
3、有穷性
4、有输入信息的说明
5、有输出信息的步骤
算法的描述方法:
1、自然语言
用自然语言描述算法通俗易懂,但文字冗长,容易出现“歧义”。
自然语言就是人们日常使用的语言,可以是汉语或英语或其它语言。用自然语言表示通俗易懂,但文字冗长,容易出现“歧义性”。自然语言表示的含义往往不大严格,要根据上下文才能判断其正确含义,描述包含分支和循环的算法时也不很方便。因此,除了那些很简单的问题外,一般不用自然语言描述算法。
2、传统流程图
流程图是用一些图形表示各种操作。用图形描述算法形象直观、易于理解。
3、N-S流程图
三种基本结构:顺序结构、选择结构、循环结构。
顺序结构示意图:
选择结构示意图:
循环结构示意图:
4、伪代码
伪代码是用介于自然语言和计算机语言之间的文字和符号描述算法。
5、计算机语言
计算机是无法识别流程图和伪代码的。只有用计算机语言编写的程序才能被计算
机执行(当然还要编译为目标程序才能被计算机识别和执行)。
1.4. 程序和程序设计方法
程序
计算机程序(简称程序)是指根据算法描述,用计算机语言表示的能被计算机识别和执行的指令集合。
预处理
程序设计语言的预处理的概念:在编译之前进行的处理。
预处理命令以符号"#"开头。
C语言的预处理主要有三个方面的内容:
1.宏定义; (#define标识符文本,也可以理解成常量)
2.文件包含;(#include <文件名>,一般是以.h结尾的头部文件,编译后得到一个目标文件.obj)
3.条件编译。 (有些语句在条件满足时才编译。)
程序设计方法
1.结构化程序设计
2.面向对象程序设计
结构化程序设计方法的优点:
1、采用自顶向下,逐步求精的方法使得整个设计方案层次分明,程序员容易编码实现,读者容易阅读理解。对于复杂的程序,可以“先易后难,先抽象后具体”,使得程序设计工作整体思路清楚,目标明确,程序员能够有条不絮地推进。
2、程序由相互独立的模块构成,因此在设计某个模块时,不会受到其他模块的牵连,因而可将较为复杂的问题化简为一系列简单模块的设计。模块的独立性还为扩充已有的系统、建立新系统带来方便。
面向对象程序设计
面向对象程序设计与传统的结构化程序设计相比,面向对象程序设计吸取了结构化程序设计的一切优点(自顶向下、逐步求精的设计原则)。
二者之间的最大差别表现在:
1、面向对象方法采用数据抽象和信息隐藏技术使组成类的数据和操作是不可分割的,避免了结构化程序由于数据和过程分离引起的弊病。
2、面向对象的程序是由类、对象(类的实例)和对象之间的动态联系组成的。
而结构化程序是由结构化的数据、过程的定义以及调用过程处理相应的数据组成的。
《高级语言程序设计》 (自考课程代码:00342) (2017年版) 编著:郑岩 机械工业出版社