批量上传,套装书可能不全,下单前咨询在线客服!有特殊要求,下单前请咨询客服!
¥ 59.31 7.4折 ¥ 79.9 全新
库存9件
作者周会平、徐建军、王挺
出版社清华大学出版社
ISBN9787302624301
出版时间2023-03
装帧平装
开本16开
定价79.9元
货号29525116
上书时间2024-11-03
本书参照ACM和IEEE CS Computing Curricula 2020(简称CC2020)以及全国高等学校计算机教育研究会编制的《计算机核心课程规范——计算机程序设计(征求意见稿)》(简称《规范》)的要求,力图通过教学,使学生掌握结构化程序设计方法和面向对象程序设计方法,掌握C 程序设计语言的语法、语义和语用,能够熟练运用C 语言解决一般问题。此外,通过课程学习,学生可以掌握学习高级程序设计语言的一般方法,养成良好的程序设计风格,对软件工程有初步的认识。本书虽然以讲授C 为主,但并非单纯讲授一门语言,而是更加强调对程序设计方法的掌握和程序设计风格的养成,为学生今后继续学习其他高级程序设计课程打下坚实的基础。
本书的编写参照CC2020和《规范》的知识体系,覆盖或涉及其中的程序设计基础(PF)、程序设计语言(PL)、算法和复杂性(AL)3个领域(area)的多个知识单元(unit)。由于部分知识单元的内容将在其他课程(如“数据结构”“算法设计与分析”“编译原理”等)中详细介绍,因此本书并未深入讲解。
本书覆盖或涉及《规范》要求的所有基础知识点、面向对象程序设计扩展知识点以及泛型程序设计扩展知识点。
本书覆盖或涉及CC2020的如下知识。
(1) 程序设计基础:
● 程序设计基本结构。
● 算法和问题求解。
● 基本数据结构。
● 递归。
● 事件驱动程序设计。
(2) 程序设计语言:
● 程序设计语言概论。
● 声明和类型。
● 抽象机制。
● 面向对象程序设计。
(3) 算法和复杂性:
● 算法策略。
● 基本算法。
本书参考了国外著名高校教材,结合国内高校教学的需求和学生的特点,力求形成如下特色。
(1) 注重知识的系统性和连贯性。本书面向大学本科计算机类专业的学生,参照CC2020和《规范》的要求,在教学内容上注意与后续课程(如“数据结构”“算法设计与分析”“编译原理”“软件工程”等)的衔接。
(2) 突出程序设计方法,强调严密的逻辑思维。本书并非单纯讲授C 程序设计语言,而是在介绍C 程序设计语言的基础上,系统地讲解程序设计方法,包括结构化程序设计方法和面向对象程序设计方法,特别是后者。程序设计方法是本书的讲授重点。因此,在本书的示例程序中,一般都配有分析、解释和经验总结等,帮助学生领会程序设计的方法和思想。
(3) 注重实践能力的培养。本书提供丰富的典型例题,每章之后配有难易和综合程度各不相同的习题。书中还适当地穿插介绍一些编程技巧和软件设计经验,使学生能够从实践的角度更好地学习和掌握C 程序设计方法。本书还提供了配套的线上实训和教师用PPT,供读者免费使用,相关资源可从清华大学出版社官网http://www.tup.com.cn下载。
(4) 注重程序设计风格的养成。良好的程序设计风格是保证软件质量的基础。本书除了有专门章节介绍程序设计风格外,始终突出对程序设计风格的要求,并介绍了从分析、设计到编程实现良好程序设计风格的方法。书中的示例程序即按照这种方法实现,在变量命名、源程序格式等方面都贯彻统一的风格。
C 是当今流行的一种高效实用的高级程序设计语言,应用十分广泛。C 也是一门复杂的语言,与C语言兼容,既支持结构化程序设计方法,也支持面向对象程序设计方法,因而成为编程人员使用广泛的工具。在学习C 的基础上,可以进一步学习其他程序设计语言,C 架起了通向强大、易用、真正的应用软件开发的桥梁。本书分为两部分: 部分包括第1~9章,是程序设计基础部分,主要介绍C 程序设计语言、程序结构和结构化程序设计基础;第二部分包括第10~15章,是面向对象程序设计部分,它建立在C 程序设计基础之上,讲述了面向对象程序设计方法。书中带的章节为选讲内容,可以根据实际情况取舍。
本书是作者根据在国防科技大学多年从事教学和实践的经验与体会编写而成的,适合作为高等学校“程序设计基础”或“高级语言程序设计”课程的教材,也可供广大读者自学参考。由于作者水平有限,书中难免存在缺点和错误,恳请广大读者批评指正。
作者
于国防科技大学计算机学院
2023年1月
本书参照ACM和IEEE CS Computing Curricula 2020以及全国高等学校计算机教育研究会编制的《计算机核心课程规范——计算机程序设计(征求意见稿)》的要求,面向大学计算机类专业本科教学的需要,系统地介绍C 程序设计语言的语法、语义和语用,使读者掌握结构化程序设计方法和面向对象程序设计方法。全书分为两部分: 部分是程序设计基础(第1~9章),主要介绍数据类型、运算符与表达式、控制结构、函数、数组、指针、自定义数据结构、输入和输出等程序设计的基本概念和结构化程序设计方法;第二部分是面向对象程序设计(第10~15章),主要介绍类与对象、运算符重载、继承和多态、异常和模板等面向对象程序设计的基本概念和程序设计方法。 本书注重知识的系统性和连贯性,在内容上注意与后续课程的衔接,强调严密的逻辑思维,突出程序设计方法的教学。 本书适合作为高等学校“程序设计基础”或“高级语言程序设计”课程的教材,也可供广大自学人员学习参考。
本书参照ACM和IEEE CS Computing Curricula 2020以及全国高等学校计算机教育研究会编制的《计算机核心课程规范——计算机程序设计(征求意见稿)》的要求,面向大学计算机类专业本科教学的需要,系统地介绍C 程序设计语言的语法、语义和语用,使读者掌握结构化程序设计方法和面向对象程序设计方法。全书分为两部分: 第一部分是程序设计基础(第1~9章),主要介绍数据类型、运算符与表达式、控制结构、函数、数组、指针、自定义数据结构、输入和输出等程序设计的基本概念和结构化程序设计方法;第二部分是面向对象程序设计(第10~15章),主要介绍类与对象、运算符重载、继承和多态、异常和模板等面向对象程序设计的基本概念和程序设计方法。 本书注重知识的系统性和连贯性,在内容上注意与后续课程的衔接,强调严密的逻辑思维,突出程序设计方法的教学。 本书适合作为高等学校“程序设计基础”或“高级语言程序设计”课程的教材,也可供广大自学人员学习参考。
第1章程序设计概述1
1.1计算机系统概述1
1.1.1什么是计算机系统1
1.1.2计算机硬件2
1.1.3计算机软件2
1.2程序设计基本概念3
1.2.1问题求解过程3
1.2.2算法与程序4
1.2.3程序设计语言7
1.3程序设计方法8
1.3.1结构化程序设计8
1.3.2面向对象程序设计9
1.4C与C 10
1.4.1C语言10
1.4.2C 语言11
1.5C 编程简介11
1.5.1C 编程的典型过程11
1.5.2个C 程序12
1.6程序设计风格13
习题15
第2章C 语言基础17
2.1C 的字符集和关键字17
2.1.1字符集17
2.1.2标识符18
2.1.3关键字18
2.2基本数据类型19
2.2.1整型19
2.2.2浮点型20
2.2.3字符型21
2.2.4布尔类型21
2.2.5空类型22
2.3常量与变量22
2.3.1常量22
2.3.2变量25
2.3.3符号常量26
2.3.4const修饰符27
2.4初识输入输出27
2.4.1使用库函数27
2.4.2使用cin和cout28
2.5main函数30
习题32
目录C 程序设计(第4版)第3章表达式34
3.1表达式基础34
3.1.1基本概念34
3.1.2优先级和结合律35
3.2运算符和表达式35
3.2.1算术运算35
3.2.2关系运算38
3.2.3逻辑运算38
3.2.4位运算40
3.2.5赋值运算43
3.2.6逗号运算45
3.2.7条件运算符45
3.2.8sizeof运算符46
3.3类型转换46
3.4表达式语句48
习题49
第4章控制结构52
4.1程序的语句和基本控制结构52
4.2顺序结构——复合语句53
4.3选择结构54
4.3.1if选择结构54
4.3.2ifelse选择结构55
4.3.3switch选择结构61
4.4循环结构65
4.4.1while循环语句65
4.4.2dowhile循环语句68
4.4.3for循环语句69
4.4.4循环嵌套72
4.5控制转移语句73
4.5.1break语句73
4.5.2continue语句75
4.5.3goto语句76
4.5.4return语句77
4.6结构化程序设计方法77
4.6.1结构化程序设计思想77
4.6.2结构化程序设计原则80
4.6.3结构化程序设计示例80
4.6.4再谈程序设计风格84
习题86
第5章函数90
5.1模块化程序设计90
5.2预定义函数的使用91
5.3函数定义与函数原型92
5.3.1函数定义92
5.3.2函数原型94
5.4函数的调用95
5.4.1函数调用的概念95
5.4.2参数传递97
5.4.3默认参数99
5.4.4内联函数100
5.5函数重载102
5.6作用域103
5.7存储类别105
5.7.1变量的存储特性106
5.7.2自动存储变量106
5.7.3静态存储变量107
5.7.4寄存器变量110
5.7.5外部变量110
5.8递归函数111
5.8.1递归的概念111
5.8.2递归函数应用举例113
5.9预处理指令116
5.9.1#include指令117
5.9.2#define指令117
5.9.3#if、#else、#endif、#ifdef、#ifndef指令119
习题120
第6章数组123
6.1一维数组124
6.1.1一维数组的声明与初始化124
6.1.2数组的应用125
6.1.3通过范围for循环访问数组128
6.1.4数组作为函数参数129
6.2多维数组134
6.2.1多维数组的定义与初始化134
6.2.2多维数组的应用示例136
6.2.3多维数组作为函数参数138
6.3字符串141
6.3.1字符与字符串的概念141
6.3.2字符串与字符数组141
6.3.3字符串的输入和输出143
6.3.4字符串的应用示例145
6.3.5string类型146
习题148
第7章指针150
7.1指针的概念和定义150
7.2使用指针152
7.2.1指针的运算152
7.2.2指针作为函数参数156
7.3指针与数组157
7.4字符指针与字符数组161
7.4.1字符串函数161
7.4.2字符串函数的应用167
7.5指针与const限定符170
7.5.1基本概念170
7.5.2用const限定指针170
7.6指针和引用174
7.7动态内存分配176
7.7.1基本概念176
7.7.2动态分配内存的应用178
7.8函数指针181
7.8.1函数指针的定义181
7.8.2函数指针的使用182
习题184
第8章自定义数据结构187
8.1结构的基本概念187
8.1.1结构的定义188
8.1.2结构变量成员的引用190
8.2结构的使用191
8.2.1结构与函数191
8.2.2结构与数组195
8.2.3结构与指针198
8.2.4位段201
8.3联合203
8.3.1联合和联合变量定义203
8.3.2联合的使用205
8.4枚举206
8.4.1枚举和枚举型变量的定义207
8.4.2枚举类型变量的赋值和使用208
8.5链表的基本概念208
8.6单向链表209
8.6.1单向链表的定义209
8.6.2单向链表的操作210
8.7双向链表219
8.7.1双向链表的定义219
8.7.2双向链表的操作220
习题226
第9章输入和输出229
9.1C 的输入和输出230
9.2用流进行输入输出230
9.2.1流操纵算子231
9.2.2其他输入输出成员函数236
9.3C语言的输入与输出函数237
9.3.1标准输入与输出函数237
9.3.2格式化输入函数scanf238
9.3.3格式化输出函数printf240
9.3.4格式化输入输出函数应用示例241
9.4文件的基本概念246
9.5通过文件流进行文件操作247
9.5.1通过文件流打开、建立文件248
9.5.2通过文件流写文件250
9.5.3通过文件流读文件251
9.5.4通过文件流读写二进制文件253
9.5.5通过文件流随机读写文件255
9.6通过FILE结构进行文件操作258
9.6.1通过FILE结构建立、打开和关闭文件258
9.6.2通过FILE结构写文件260
9.6.3通过FILE结构读文件262
9.6.4通过FILE结构指针随机读写文件266
习题267
第10章面向对象程序设计基本概念270
10.1面向对象语言和面向对象方法270
10.2类、对象和消息272
10.2.1类和对象272
10.2.2消息274
10.3面向对象程序设计的特点275
10.4面向对象程序的结构277
习题279
第11章类与对象281
11.1数据抽象的概念282
11.2抽象数据类型283
11.2.1封装与信息隐藏283
11.2.2接口与实现的分离284
11.2.3用结构实现用户自定义类型——栈284
11.2.4用类实现抽象数据类型——栈288
11.3类和对象的定义293
11.3.1数据成员293
11.3.2成员函数295
11.3.3访问控制295
11.3.4静态成员297
11.3.5对象的建立301
11.4构造函数和析构函数302
11.4.1构造函数和析构函数的作用303
11.4.2构造函数重载304
11.4.3默认构造函数305
11.4.4复制构造函数307
11.4.5构造函数和析构函数的执行时机308
11.5this指针310
11.6类的const特性313
11.7类的复合317
11.8友元函数和友元类324
11.8.1友元函数325
11.8.2友元类326
习题328
第12章运算符重载331
12.1运算符重载的作用和实现机制331
12.1.1运算符重载的原理和意义332
12.1.2运算符重载的限制335
12.2运算符成员函数与友元函数336
12.3单目运算符重载337
12.4重载流插入和流提取运算符343
12.5一般双目运算符重载346
12.6赋值运算符重载350
12.7类型之间的转换354
习题361
第13章继承和多态364
13.1继承和派生的概念365
13.2继承的定义365
13.2.1派生类和基类366
13.2.2继承的方式367
13.2.3类的层次368
13.2.4在派生类中重定义基类的函数368
13.2.5派生类和基类的转换373
13.3类指针374
13.4继承关系中的构造函数和析构函数380
13.5多重继承383
13.6多态性的概念387
13.6.1静态绑定和动态绑定387
13.6.2多态性的意义388
13.7虚函数389
13.8抽象基类和纯虚函数395
13.8.1纯虚函数395
13.8.2抽象类和具体类395
13.9虚析构函数399
13.10软件渐增式开发404
13.10.1复合、继承与多态404
13.10.2示例404
习题419
第14章异常421
14.1异常处理的意义421
14.2异常处理基础422
14.3异常的抛出和传播425
14.4异常的捕获和处理428
习题431
第15章模板433
15.1类属机制433
15.2函数模板434
15.2.1函数模板的定义434
15.2.2使用函数模板435
15.3类模板439
15.3.1类模板的定义440
15.3.2使用类模板441
习题443
附录AC 运算符的优先级和结合性444
附录BASCII字符集446
参考文献448
本书参照ACM和IEEE CS Computing Curricula 2020以及全国高等学校计算机教育研究会编制的《计算机核心课程规范——计算机程序设计(征求意见稿)》的要求,面向大学计算机类专业本科教学的需要,系统地介绍C 程序设计语言的语法、语义和语用,使读者掌握结构化程序设计方法和面向对象程序设计方法。全书分为两部分: 部分是程序设计基础(第1~9章),主要介绍数据类型、运算符与表达式、控制结构、函数、数组、指针、自定义数据结构、输入和输出等程序设计的基本概念和结构化程序设计方法;第二部分是面向对象程序设计(第10~15章),主要介绍类与对象、运算符重载、继承和多态、异常和模板等面向对象程序设计的基本概念和程序设计方法。 本书注重知识的系统性和连贯性,在内容上注意与后续课程的衔接,强调严密的逻辑思维,突出程序设计方法的教学。 本书适合作为高等学校“程序设计基础”或“高级语言程序设计”课程的教材,也可供广大自学人员学习参考。
本书参照ACM和IEEE CS CC2020以及全国高等学校计算机教育研究会编制的《计算机核心课程规范——计算机程序设计》的要求,力图通过教学,使学生掌握结构化程序设计方法和面向对象程序设计方法,掌握C 程序设计语言的语法、语义和语用,能够熟练运用C 语言解决一般问题。此外,通过课程学习,使学生掌握学习高级程序设计语言的一般方法,养成良好的程序设计风格,对软件工程有初步的认识。本教材虽然以讲授C 为主,但并非单纯讲授一门语言,而是更加强调对程序设计方法的掌握和程序设计风格的养成,为学生今后继续学习其他高级程序设计课程打下牢固的基础。
— 没有更多了 —
以下为对购买帮助不大的评价