c++程序设计第3版pdf下载-c++程序设计第3版pdf完整版

c++程序设计第3版pdf下载-c++程序设计第3版pdf完整版

编辑点评:

本书是初学者学习C 程序设计的经典教材,荣获全国高校出版社优秀畅销书一等奖,是发行逾1250万册《C程序设计(第四版)》的升级篇。

c++程序设计第3版pdf

内容简介

C 是近年来国内外广泛使用的现代计算机语言,它既支持基于过程的程序设计,也支持面向对象的程序设计。国内许多高校陆续开设了C 程序设计课程。但是,由于C 涉及概念很多,语法比较复杂,内容十分广泛,使不少人感到学习难度较大,难以入门。本书作者深入调查了大学的程序设计课程的现状和发展趋势,参阅了国内外数十种有关C 的教材,认真分析了读者在学习中的困难和认识规律,设计了读者易于学习的教材体系,于2004年出版了《C 程序设计》一书。该书降低入门起点,不需要C语言的基础,从零起点介绍程序设计和C 。广大师生用后反映非常好,认为该书定位准确,概念清晰,深入浅出,取舍合理,以通俗易懂的语言对C 的许多难懂的概念作了透彻而通俗的说明,大大降低了初学者学习的困难,是初学者学习C 的一本好教材。

根据教学实践的需要,作者在2011年对该书进行了修订,出版了《C 程序设计(第2版)》,现在又进行了一次修订,出版了《C 程序设计(第3版)》,内容更加丰富,讲解更加清晰,学习更加容易,依据ANSI C 标准进行介绍,引导读者从一开始就按C 的要求编程,而不是过多地迁就C语言的习惯。全书分为4篇: 基本知识、基于过程的程序设计、基于对象的程序设计和面向对象的程序设计。

作者简介

谭浩强教授,我国著名计算机教育专家。1958年清华大学自动控制系毕业。青年时代曾担任清华大学学生会主席、北京市学联副主席、北京市人民代表、全国文教战线先进分子。他是我国计算机普及和高校计算机基础教育的开拓者之一。现担任全国高等院校计算机基础教育研究会荣誉会长、教育部全国计算机应用技术证书考试委员会主任委员、中国老教授协会常务理事。获全国高校教学成果奖*奖、国家科技进步奖、北京市政府授予“有突出贡献专家称号”。被国家科委表彰为“全国优秀科普工作者”。获国务院特殊津贴。

谭浩强教授创造了三个世界纪录:(1)30年来他(以及和他人合作)共编著出版了160多本计算机著作,主编了400多本计算机书籍,是出版科技著作数量最多的人。(2)他编著和主编的书发行量超过6000万册,是读者最多的科技作家。我国平均每21人、知识分子每1.2人就拥有一本谭浩强的书。(3)他和他人合著的《BASIC语言》发行1250多万册,他所著的《C程序设计》发行1250多万册,双双创造科技书籍发行量的最高纪录。他曾在中央电视台主讲了BASIC,FORTRAN,COBOL,Pascal,QBASIC,C,Visual Basic七种计算机语言,观众超过500万人。

前言试读

从20世纪70年代末、80年代初开始,我国的高等院校开始面向各个专业的全体大学生开展计算机教育。面向非计算机专业学生的计算机基础教育,牵涉的专业面广、人数众多,影响深远,它将直接影响我国各行各业、各个领域中计算机应用的发展水平。这是一项意义重大而且大有可为的工作,应该引起各方面的充分重视。

20多年来,全国高等院校计算机基础教育研究会和全国高校从事计算机基础教育的老师始终不渝地在这片未被开垦的土地上辛勤工作,深入探索,努力开拓,积累了丰富的经验,初步形成了一套行之有效的课程体系和教学理念。20年来高等院校计算机基础教育的发展经历了3个阶段:20世纪80年代是初创阶段,带有扫盲的性质,多数学校只开设一门入门课程;20世纪90年代是规范阶段,在全国范围内形成了按3个层次进行教学的课程体系,教学的广度和深度都有所发展;进入21世纪,开始了深化提高的第3阶段,需要在原有基础上再上一个新台阶。

在计算机基础教育的新阶段,要充分认识到计算机基础教育面临的挑战。

(1) 在世界范围内信息技术以空前的速度迅猛发展,新的技术和新的方法层出不穷,要求高等院校计算机基础教育必须跟上信息技术发展的潮流,大力更新教学内容,用信息技术的新成就武装当今的大学生。

(2) 我国国民经济现在处于持续快速稳定发展阶段,需要大力发展信息产业,加快经济与社会信息化的进程,这就迫切需要大批既熟悉本领域业务,又能熟练使用计算机,并能将信息技术应用于本领域的新型专门人才。因此需要大力提高高校计算机基础教育的水平,培养出数以百万计的计算机应用人才。

(3) 21世纪,信息技术教育在我国中小学中全面开展,计算机教育的起点从大学下移到中小学。水涨船高,这样也为提高大学的计算机教育水平创造了十分有利的条件。

迎接21世纪的挑战,大力提高我国高等学校计算机基础教育的水平,培养出符合信息时代要求的人才,已成为广大计算机教育工作者的神圣使命和光荣职责。全国高等院校计算机基础教育研究会和清华大学出版社于2002年联合成立了“中国高等院校计算机基础教育改革课题研究组”,集中了一批长期在高校计算机基础教育领域从事教学和研究的专家、教授,经过深入调查研究,广泛征求意见,反复讨论修改,提出了高校计算机基础教育改革思路和课程方案,并于2004年7月发布了《中国高等院校计算机基础教育课程体系2004》(简称CFC 2004),由清华大学出版社出版。国内知名专家和从事计算机基础教育工作的广大教师一致认为CFC 2004提出了一个既体现先进性又切合实际的思路和解决方案,该研究成果具有开创性、针对性、前瞻性和可操作性,对发展我国高等院校的计算机基础教育具有重要的指导作用。在此基础上,根据计算机基础教育的发展,全国高等院校计算机基础教育研究会先后多次发布了CFC的新版本。

为了实现CFC提出的要求,必须有一批与之配套的教材。教材是实现教育思想和教学要求的重要保证,是教学改革中的一项重要的基本建设。如果没有好的教材,提高教学质量只是一句空话。要写好一本教材是不容易的,不仅需要掌握有关的科学技术知识,而且要熟悉自己工作的对象、研究读者的认识规律、善于组织教材内容、具有较好的文字功底,还需要学习一点教育学和心理学的知识等。一本好的计算机基础教材应当具备以下5个要素:

(1) 定位准确。要明确读者对象,要有的放矢,不要不问对象,提笔就写。

(2) 内容先进。要能反映计算机科学技术的新成果、新趋势。

(3) 取舍合理。要做到“该有的有,不该有的没有”,不要包罗万象、贪多求全,不应把教材写成手册。

(4) 体系得当。要针对非计算机专业学生的特点,精心设计教材体系,不仅使教材体现科学性和先进性,还要注意循序渐进、降低台阶、分散难点,使学生易于理解。

(5) 风格鲜明。要用通俗易懂的方法和语言叙述复杂的概念。善于运用形象思维,深入浅出,引人入胜。

为了推动各高校的教学,我们愿意与全国各地区、各学校的专家和老师共同奋斗,编写和出版一批具有中国特色的、符合非计算机专业学生特点的、受广大读者欢迎的优秀教材。为此,我们成立了“中国高等院校计算机基础教育课程体系规划教材”编审委员会,全面指导本套教材的编写工作。

教材具有特点

(1) 全面体现CFC的思路和课程要求。可以说,本套教材是CFC的具体化。

(2) 教材内容体现了信息技术发展的趋势。由于信息技术发展迅速,教材需要不断更新内容,推陈出新。本套教材力求反映信息技术领域中新的发展、新的应用。

(3) 按照非计算机专业学生的特点构建课程内容和教材体系,强调面向应用,注重培养应用能力,针对多数学生的认知规律,尽量采用通俗易懂的方法说明复杂的概念,使学生易于学习。

(4) 考虑到教学对象不同,本套教材包括了各方面所需要的教材(重点课程和一般课程;必修课和选修课;理论课和实践课) ,供不同学校、不同专业的学生选用。

(5) 本套教材的作者都有较高的学术造诣,有丰富的计算机基础教育的经验,在教材中体现了研究会所倡导的思路和风格,因而符合教学实践,便于采用。

本套教材统一规划、分批组织、陆续出版,希望能得到各位专家、老师和读者的指正,我们将根据计算机技术的发展和广大师生的宝贵意见随时修订,使之不断完善。

c++程序设计PDF预览图

目录

第1篇基 本 知 识

第1章C 的初步知识3

1.1从C到C 3

1.2最简单的C 程序5

1.3C 程序的构成和书写形式12

1.4C 程序的编写和实现13

1.5关于C 上机实践15

习题15

第2章数据的存储、表示形式和基本运算18

2.1C 的数据类型18

2.2常量20

2.2.1什么是常量20

2.2.2数值常量20

2.2.3字符常量22

2.2.4符号常量25

2.3变量26

2.3.1什么是变量26

2.3.2变量名规则26

2.3.3定义变量27

2.3.4对变量赋初值28

2.3.5常变量28

2.4C 的运算符29

2.5算术运算符与算术表达式30

2.5.1基本的算术运算符30

2.5.2算术表达式和运算符的优先级与结合性30

2.5.3表达式中各类数值型数据间的混合运算30

2.5.4自增( )和自减(–)运算符31

2.5.5强制类型转换运算符32

2.6赋值运算符和赋值表达式33

2.6.1赋值运算符33

2.6.2赋值过程中的类型转换33

2.6.3复合赋值运算符35

2.6.4赋值表达式35

2.7逗号运算符和逗号表达式36

习题37

第2篇基于过程的程序设计

第3章程序设计初步41

3.1基于过程的程序设计和算法41

3.1.1算法的概念41

3.1.2算法的表示42

3.2C 的程序结构和C 语句43

3.3赋值操作46

3.4C 的输入与输出46

3.4.1输入流与输出流的基本操作47

3.4.2在标准输入流与输出流中使用控制符49

3.4.3用getchar和putchar 函数进行字符的输入和输出52

3.4.4用scanf和printf函数进行输入和输出53

3.5编写顺序结构的程序54

3.6关系运算和逻辑运算55

3.6.1关系运算和关系表达式55

3.6.2逻辑常量和逻辑变量57

3.6.3逻辑运算和逻辑表达式58

3.7选择结构和if语句60

3.7.1if语句的形式60

3.7.2if语句的嵌套63

3.7.3条件运算符和条件表达式64

3.7.4多分支选择结构与switch 语句65

3.7.5编写选择结构的程序67

3.8循环结构和循环语句69

3.8.1用while语句构成循环70

3.8.2用dowhile语句构成循环71

3.8.3用for语句构成循环72

3.8.4循环的嵌套74

3.8.5提前结束循环(break语句和continue语句)74

3.8.6编写循环结构的程序75

习题80

第4章利用函数实现指定的功能83

4.1什么是函数83

4.1.1为什么需要函数83

4.1.2函数调用举例84

4.1.3函数的分类85

4.2定义函数的一般形式85

4.2.1定义无参函数的一般形式85

4.2.2定义有参函数的一般形式86

4.3函数参数和函数的值86

4.3.1形式参数和实际参数86

4.3.2函数的返回值88

4.4函数的调用89

4.4.1函数调用的一般形式89

4.4.2函数调用的方式89

4.4.3对被调用函数的声明和函数原型90

4.5函数的嵌套调用92

4.6函数的递归调用95

4.7内置函数98

4.8函数的重载100

精彩书摘

第5.5节介绍的用字符数组存放字符串,并在此基础上进行字符串运算,是C语言的方法,被C++保留了下来,用这样的方法,字符申总是和字符数组联系在一起的。为了存放字符串,必须定义一个字符数组。但是字符数组是有一定大小的。在进行字符串连接或字符串复制时,如果未能准确计算字符申和字符数组的长度,就会发生将一部分字符存放在字符数组范围之外,从而可能破坏系统的正常工作状态。因此用字符数组来存放字符串并不是最理想和最安全的方法。

在C++中除了可以使用第5.5节介绍的方法外,还可以使用一种更方便、更安全的方法。C++提供了一种新的数据类型–字符串类型(string类型),在使用方法上,它和char,int类型一样,可以用来定义变量,这就是字符串变量–用一个名字代表一个字符序列。

实际上,string并不是C++语言本身具有的基本类型(而char,int,float,double等是C++本身提供的基本类型),它是在C++标准库中声明的一个字符串类,用这种类可以定义对象。每一个字符串变量都是string类的一个对象。关于类的概念,在第1章中已作了初步介绍,在第8章还要作进一步的介绍。在本章中,只从使用的角度来介绍如何使用string类对象-字符串变量。

5.6.1字符串变量的定义和引用1.定义字符串变量和其他类型变量一样,字符串变量必须先定义后使用,定义字符串变量要用类名string。如sring sringl:/定义sringl为字符变量string string2=”China”://定义string2同时对其初始化可以看出,这和定义char,int,float,double等类型变量的方法是类似的。

应当注意:在使用sring类的定义变量时,必须在本文件的开头将C++标准库中的string头文件包含进来,即应加上#include <string>//注意头文件名不是string.h这一点是与定义基本数据类型变量所不同的。

2.对字符串变量的赋值在定义了字符串变量后,可以用赋值语句对它赋予一个字符串常量,如stringl。"China”;注意;stringl是字符串变量,不是字符数组名,用字符数组时是不能这样做的,如:

char sr[10]:

∥定义字符数组s守str=”Camada”;//错误,r不是字符串变量而是参数组名既可以用字符串常量给字符串变量赋值,也可以用一个字符串变量给另一个字符串变量赋值。如sring2·singl;/假设sriag2和ringl均已定义为字符率变量不要求string2和string1长度相同,假如string2原来是”China”,stringl原来是”Canada”,赋值后string2也变成“Canada”。在定义字符串变量时不需指定长度,它的长度随其中的字符串长度而改变。如在执行上面的赋值语句前,stringl的长度为5,赋值后长度为6。

这就使我们在向字符申变量赋值时不必精确计算字符个数,不必顾虑是否会“超长”

而影响系统安全,为使用者提供很大方便。

可以对字符串变量中某一字符进行操作,如

c++程序设计第3版pdf截图

c++程序设计第3版pdf下载-c++程序设计第3版pdf完整版插图(1)c++程序设计第3版pdf下载-c++程序设计第3版pdf完整版插图(2)c++程序设计第3版pdf下载-c++程序设计第3版pdf完整版插图(3)c++程序设计第3版pdf下载-c++程序设计第3版pdf完整版插图(4)c++程序设计第3版pdf下载-c++程序设计第3版pdf完整版插图(5)c++程序设计第3版pdf下载-c++程序设计第3版pdf完整版插图(6)

评分及评论

无用户评分

来评个分数吧

  • 5 分
    0
  • 4 分
    0
  • 3 分
    0
  • 2 分
    0
  • 1 分
    0

Comments