第1章C++的初步知识

上传人:资****亨 文档编号:477495142 上传时间:2024-05-05 格式:PPT 页数:44 大小:2.24MB
返回 下载 相关 举报
第1章C++的初步知识_第1页
第1页 / 共44页
第1章C++的初步知识_第2页
第2页 / 共44页
第1章C++的初步知识_第3页
第3页 / 共44页
第1章C++的初步知识_第4页
第4页 / 共44页
第1章C++的初步知识_第5页
第5页 / 共44页
点击查看更多>>
资源描述

《第1章C++的初步知识》由会员分享,可在线阅读,更多相关《第1章C++的初步知识(44页珍藏版)》请在金锄头文库上搜索。

1、C+面向对象程序设计1编辑ppto教材o?C+程序设计?谭浩强 清华大学出版社o?C+面向对象程序设计?谭浩强 清华大学出版社2编辑ppt教学内容o第1篇 基 本 知 识o第1章 C+的初步知识o第2章 数据类型与表达式o第2篇 面向过程的程序设计o第3章 程序设计初步o第4章 函数与预处理o第5章 数组o第6章 指针o第7章 自定义数据类型3编辑ppto第3篇 基于对象的程序设计o第8章 类和对象o第9章 关于类和对象的进一步讨论o第10章 运算符重载o第4篇 面向对象的程序设计o第11章 继承与派生o第12章 多态性与虚函数o第13章 输入输出流o第14章 C+工具4编辑ppto第1章 C

2、+的初步知识o第2章 数据类型与表达式第1篇基 本 知 识5编辑ppt第1章 C+的初步知识o1.1 从C到C+o1.2 最简单的C+程序o1.3 C+程序的构成和书写形式o1.4 C+程序的编写和实现o1.5 关于C+上机实践6编辑ppto计算机程序Computer Programo计算机的工作是用程序Program来控制的o程序是指令Instruction的集合o指令是计算机可以识别的命令1.1 从C到C+7编辑ppto计算机程序语言的开展:o(1)机器语言:由计算机硬件系统可以识别的二进制指令组成的语言称为机器语言。o计算机开展的初期,软件工程师们只能用机器语言来编写程序。这一阶段,在人

3、类的自然语言和计算机编程语言之间存在着巨大的鸿沟。o(2)汇编语言:将机器指令映射为一些可以被人读懂的助记符Symbol,如ADD、SUB等o此时编程语言与人类语言间的鸿沟略有缩小,但仍与人类的思维相差甚远。因为它的抽象程度太低,程序员需要考虑大量的机器细节。8编辑ppto(3)高级语言o屏蔽了机器的细节,提高了语言的抽象层次,程序中可以采用具有一定涵义的数据命名和容易理解的执行语句。这使得在书写程序时可以联系到程序所描述的具体事物。9编辑ppto世界上第一种计算机高级语言诞生于1954年,它是FORTRAN语言。先后出现了多种计算机高级语言。其中使用最广泛、影响最大的当推BASIC语言和C语

4、言。oBASIC语言是1964年在FORTRAN语言的根底上简化而成的,它是为初学者设计的小型高级语言。oC语言是1972年由美国贝尔实验室研制成功的。它不是为初学者设计的,是为了编写UNIX操作系统的。大多数系统软件和许多应用软件都是用C语言编写的。10编辑pptoC语言的主要特点是:o1、C语言是一种结构化的程序设计语言,语言本身简洁、使用灵活方便。既适用于设计和编写大的系统程序,又适用于编写小的控制程序,也适用科学计算。o2、它既有高级语言的特点,又具有汇编语言的特点。运算符丰富,除了提供对数据的算术逻辑运算外,还提供了二进制的位运算。并且也提供了灵活的数据结构。用C语言编写的程序表述灵

5、活方便,功能强大。用C语言开发的程序,其结构性好,目标程序质量高,程序执行效率高。11编辑ppto3、程序的可移植性好。用C语言在某一种型号的计算机上开发的程序,根本上可以不作修改,而直接移植到其它型号的计算机上运行。o4、程序的语法结构不够严密,程序设计的自由度大。这对于比较精通C语言的程序设计者来说,可以设计出高质量的非常通用的程序。但对于初学者来说,要能比较熟练运用C语言来编写程序,并不是一件容易的事情。与其它高级语言相比而言,调试程序比较困难。往往是编好程序输入计算机后,编译时容易通过,而在执行时还会出错。12编辑ppto随着C语言应用的推广,C语言存在的一些缺陷或缺乏也开始流露出来,

6、并受到大家的关注。如:C语言对数据类型检查的机制比较弱;缺少支持代码重用的结构;随着软件工程规模的扩大,难以适应开发特大型的程度等等由于C语言等高级语言是面向过程的,最初用于科学计算。13编辑pptoC+是由AT&T Bell(贝尔)实验室于20世纪80年代初在C语言的根底上开发成功的。C+保存了C语言原有的所有优点,增加了面向对象的机制。oC+是由C开展而来的,与C兼容。用C语言写的程序根本上可以不加修改地用于C+。o从C+的名字可以看出它是C的超集。C+既可用于面向过程的结构化程序设计,又可用于面向对象的程序设计,是一种功能强大的混合型的程序设计语言。14编辑pptoC+对C的“增强,表现

7、在两个方面:o(1)在原来面向过程的机制根底上,对C语言的功能做了不少扩充。o(2)增加了面向对象的机制。o面向对象程序设计,是针对开发较大规模的程序而提出来的,目的是提高软件开发的效率。o不要把面向对象和面向过程对立起来,面向对象和面向过程不是矛盾的,而是各有用途、互为补充的。o学习C+,既要会利用C+进行面向过程的结构化程序设计,也要会利用C+进行面向对象的程序设计。15编辑ppto例1.1 输出一行字符:“This is a C+program.。o程序如下:o#include /包含头文件iostream,o /用cout输出时需要用ousing namespace std;/使用命名

8、空间stdoint main()oocoutThis is a C+program.;o/上面用C+的方法输出一行oreturn 0;o1.2 最简单的C+程序主函数类型主函数类型intint,返回值,返回值函数体函数体预处理命令预处理命令在运行时会在屏幕上输出以下一行信息:This is a C+program.16编辑ppto(1)用main代表“主函数的名字。每一个C+程序都必须有一个 main 函数。main前面的int的作用是声明函数的类型为整型。程序第6行的作用是向操作系统返回一个零值。如果程序不能正常执行,那么会自动向操作系统返回一个非零值,一般为-1。o(2)函数体是由大括号

9、括起来的。本例中主函数内只有一个以cout开头的语句。o注意C+所有语句最后都应当有一个分号。17编辑ppto(3)第1行“#include,这不是C+的语句,而是C+的一个预处理命令,它以“#开头以与C+语句相区别,行的末尾没有分号。o#include 是一个“包含命令,它的作用是将文件内容插入到该命令所在的程序文件中,由于iostream这类文件都放在程序单元的开头,所以称为“头文件(head file)。o在程序进行编译时,先对所有的预处理命令进行处理,将头文件的具体内容代替#include命令行,然后再对该程序单元进行整体编译。18编辑ppto(4)程序的第2行“using names

10、pace std;的意思是“使用命名空间stdoC+标准库中的类和函数是在命名空间std中声明的,因此程序中如果需要用到C+标准库就需要用“using namespace std;作声明,表示要用到命名空间std中的内容。19编辑ppto(5)C+程序中可以用/*/做注释,可以用/做注释。前者可以做多行注释,后者只做单行注释。20编辑ppto例1.2 求a和b两个数之和。o可以写出以下程序:o/求两数之和 (本行是注释行)o#include /预处理命令ousing namespace std;/使用命名空间stdoint main()/主函数首部o /函数体开始o int a,b,sum;/

11、定义变量o cinab;/输入语句o sum=a+b;/赋值语句ocouta+b=sumendl;/输出语句oreturn 0;/如程序正常结束,向操作系统返回一个零值o /函数结束21编辑ppto本程序的作用是求两个整数a和b之和sum。第1行“/求两数之和是一个注释行,C+规定在一行中如果出现“/,那么从它开始到本行末尾之间的全部内容都作为注释。o如果在运行时从键盘输入 o123 456o那么输出为oa+b=57922编辑ppto例1.3 给两个数x和y,求两数中的大者。o在本例中包含两个函数。o#include /预处理命令ousing namespace std;oint max(in

12、t x,int y)/定义max函数,函数值为整型,形式参数 /x,y为整型o /max函数体开始o int z;/变量声明,定义本函数中用到的变量/z为整型o if(xy)z=x;/if语句,如果xy,那么将x的值赋给zoelse z=y;/否那么,将y的值赋给zo return(z);/将z的值返回,通过max带回调用处o /max函数结束oint main()/主函数23编辑ppto /主函数体开始o int a,b,m;/变量声明o cinab;/输入变量a和b的值o m=max(a,b);/调用max函数,将得到的值赋给mocoutmax=mn;/输出大数m的值oreturn 0;/

13、如程序正常结束,向操作系统返回一个零值o /主函数结束o本程序包括两个函数:主函数main和被调用的函数max。o程序运行情况如下:o18 25 (输入18和25给a和b)omax=25 (输出m的值)o注意输入的两个数据间用一个或多个空格间隔,不能以逗号或其他符号间隔。24编辑ppto在上面的程序中,max函数出现在main函数之前,因此在main函数中调用max函数时,编译系统能识别max是已定义的函数名。如果把两个函数的位置对换一下,即先写main函数,后写max函数,这时在编译main函数遇到max时,编译系统无法知道max代表什么含义,因而无法编译,按出错处理。o为了解决这个问题,在

14、主函数中需要对被调用函数作声明。上面的程序可以改写如下:o#include ousing namespace std;oint main()o int max(int x,int y);/对max函数作声明o int a,b,c;o cinab;o c=max(a,b);/调用max函数25编辑ppto coutmax=cy)z=x;o else z=y;o return(z);oo只要在被调用函数的首部的末尾加一个分号,就成为对该函数的函数声明。函数声明的位置应当在函数调用之前。26编辑pptoC+程序的结构和书写格式归纳如下:o1 一个C+程序可以由一个程序单位或多个程序单位构成。每一个程

15、序单位作为一个文件。在程序编译时,编译系统分别对各个文件进行编译,因此,一个文件是一个编译单元。o(2)在一个程序单位中,可以包括以下几个局部:o 预处理命令。上节4个程序中都包括#include命令。o 全局声明局部(在函数外的声明局部)。在这局部中包括对用户自己定义的数据类型的声明和程序中所用到的变量的定义。1.3 C+程序的构成和书写形式27编辑ppto 函数。函数是实现操作的局部,因此函数是程序中必须有的和最根本的组成局部。每一个程序必须包括一个或多个函数,其中必须有一个(而且只能有一个)主函数(main函数)。o但是并不要求每一个程序文件都必须具有以上3个局部,可以缺少某些局部(包括

16、函数)。o(3)一个函数由两局部组成:o 函数首部,即函数的第一行。包括函数名、函数类型、函数属性、函数参数(形参)名、参数类型。o一个函数名后面必须跟一对圆括号,函数参数可以缺省,如int main()。28编辑ppto 函数体,即函数首部下面的大括号内的局部。如果在一个函数中有多个大括号,那么最外层的一对 为函数体的范围。o函数体一般包括:o局部声明局部(在函数内的声明局部)。包括对本函数中所用到的类型、函数的声明和变量的定义。o对数据的声明既可以放在函数之外(其作用范围是全局的),也可以放在函数内(其作用范围是局部的,只在本函数内有效)。o执行局部。由假设干个执行语句组成,用来进行有关的操作,以实现函数的功能。29编辑ppto4 语句包括两类。一类是声明语句,另一类是执行语句。C+对每一种语句赋予一种特定的功能。语句是实现操作的根本成分,显然,没有语句的函数是没有意义的。C+语句必须以分号结束。o(5)一个C+程序总是从main函数开始执行的,而不管main函数在整个程序中的位置如何。30编辑ppto(6)C+程序书写格式自由,一行内可以写几个语句,一个语句可以分写在多行上。C+

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号