新書推薦:
《
塔西佗(全二册)(二十世纪人文译丛)
》
售價:NT$
1800.0
《
(棱镜精装人文译丛)思想的假死
》
售價:NT$
290.0
《
当代精神分析新论
》
售價:NT$
430.0
《
宋初三先生集(中国思想史资料丛刊)
》
售價:NT$
990.0
《
棕榈油的全球史 : 从奴隶船到购物篮
》
售價:NT$
440.0
《
简帛时代与早期中国思想世界(上下册)(王中江著作系列)
》
售價:NT$
1400.0
《
进化主义在中国的兴起(王中江著作系列)
》
售價:NT$
950.0
《
不废风雅 生活的意趣(汪曾祺风雅意趣妙文)
》
售價:NT$
280.0
|
編輯推薦: |
本书的编写者都是长年奋战在教学一线的老教师,有着较为深厚的理论功底和教学经验。在长期的实践教学中,他们深感一本言简意赅、叙述清楚、文字深入浅出,适合教学实情的教材的迫切性。这样的教材应该具有以下一些特征:一是能适应有良好C语言基础的学生学习的需要;二是能让没有能较好掌握C语言的学生有过渡和进行系统学习的机会;三是全书的知识体系要完整,章节、知识点的编排要合理,能适应一般工科院校的教学,让从教者能以清晰明了的教学思路传授C 的知识体系。
|
內容簡介: |
在各种编程开发语言百花齐放的今天,C 语言仍然是从事计算机科学理论学习和研究人员及软件开发人员所不可忽视的。学习C 语言是具备良好编程能力的重要环节。
本书系统地讲述了C 语言的基础知识、基本规则以及编程方法,详尽地介绍面向对象的基本特征,类和对象、继承性和派生类、多态性和虚函数等内容。每章配有丰富的例题和适量的练习题,便于自学。
本书文字简洁、精练,案例丰富,叙述清晰,通俗易懂,内容由浅入深,讲解突出重点,对概念和语言机制的讲解和能力培养并重。本书适合作为高等院校本科教材,也适合作为计算机技术人员自学用书。
|
目錄:
|
第1章绪论1
1.1C 简介1
1.2面向对象与面向过程2
1.3C 对面向对象的支持3
1.4C 的新特性3
1.5小结6
习题6
第2章C 程序设计基础7
2.1认识C 程序7
2.1.1C 程序实例7
2.1.2字符集8
2.1.3词法记号8
2.1.4VC 6.0开发环境简介10
2.2基本数据类型和表达式13
2.2.1基本数据类型14
2.2.2常量15
2.2.3变量16
2.2.4运算符与表达式17
2.2.5语句20
2.3数据的输入输出21
2.3.1基本概念22
2.3.2C 输入输出示例22
2.4基本控制结构27
2.4.1用if语句实现选择结构27
2.4.2多重选择结构28
2.4.3循环结构31
2.4.4break和continue语句35
2.4.5程序举例36C 语言程序设计目录2.5自定义数据类型37
2.5.1typedef声明37
2.5.2枚举类型37
2.5.3结构体类型38
2.5.4联合体类型40
2.6小结41
习题41
第3章函数45
3.1函数的定义与使用45
3.1.1函数的定义45
3.1.2函数的参数传递46
3.1.3引用参数47
3.1.4函数的返回值48
3.1.5函数调用形式49
3.2内联函数51
3.3带默认形参值的函数52
3.4重载函数54
3.5C 系统函数56
3.6知识扩展58
3.6.1递归函数执行过程58
3.6.2C/C 存储分配60
3.7小结60
习题61
第4章类与对象62
4.1面向对象的基本概念62
4.1.1抽象62
4.1.2封装63
4.1.3继承63
4.1.4多态64
4.2类和对象的定义64
4.2.1类的定义64
4.2.2对象的定义66
4.3构造函数和析构函数67
4.3.1构造函数67
4.3.2析构函数69
4.3.3拷贝构造函数70
4.4类的组合73
4.4.1组合73
4.4.2前向引用声明75
4.5知识扩展76
4.5.1class与struct76
4.5.2非public构造函数78
4.6小结81
习题81
第5章数据的共享与保护82
5.1标识符的作用域与可见性82
5.1.1作用域82
5.1.2可见性85
5.2对象的存储类型与生存期86
5.3类的静态成员88
5.3.1静态数据成员88
5.3.2静态函数成员90
5.4类的友元92
5.4.1友元函数92
5.4.2友元类93
5.5共享数据的保护94
5.5.1常对象95
5.5.2用const修饰的类成员95
5.5.3常引用101
5.6多文件结构和编译预处理命令103
5.6.1C 程序的一般组织结构103
5.6.2外部变量与外部函数106
5.6.3编译预处理108
5.7小结112
习题113
第6章数组、指针与字符串114
6.1数组114
6.1.1数组的声明与使用114
6.1.2数组的存储与初始化116
6.1.3数组作为函数的参数118
6.1.4对象数组120
6.1.5程序实例122
6.2指针123
6.2.1内存空间的访问方式123
6.2.2指针变量的声明124
6.2.3指针的赋值125
6.2.4指针运算126
6.2.5用指针处理数组元素129
6.2.6指针数组133
6.2.7用指针作为函数的参数134
6.2.8指针型函数136
6.2.9指向函数的指针136
6.2.10对象指针138
6.3动态内存分配140
6.4深复制与浅复制142
6.5字符串145
6.5.1用字符数组存储和处理字符串145
6.5.2string类147
6.6综合实例148
6.7知识扩展150
6.7.1指向指针的指针150
6.7.2指针与const 限定符151
6.8小结153
习题153
第7章继承与派生155
7.1继承与派生的基本概念155
7.2单继承158
7.3类的保护成员161
7.4访问权限和类型兼容规则163
7.4.1公有派生和类型兼容规则165
7.4.2保护派生167
7.4.3私有派生169
7.5多继承170
7.6构造函数和析构函数171
7.7多继承中的二义性问题176
7.7.1作用域分辨操作符与支配规则177
7.7.2虚继承与虚基类178
7.7.3虚基类成员的构造和析构181
7.8知识扩展187
7.9小结188
习题189
第8章多态191
8.1多态概述191
8.2运算符重载191
8.2.1运算符重载的机制192
8.2.2运算符重载的规则192
8.2.3重载为类的非成员函数(通常是友元函数)192
8.2.4重载为类的成员函数195
8.2.5其他运算符重载示例197
8.3虚函数200
8.3.1静态联编与动态联编200
8.3.2一般虚函数成员203
8.3.3虚析构函数204
8.4纯虚函数和抽象类206
8.4.1纯虚函数206
8.4.2抽象类206
8.4.3抽象类的意义208
8.5知识扩展210
8.5.1dynamic_cast安全向下转型210
8.5.2用typeid获取运行时类型信息212
8.6小结215
习题215
第9章流类库与输入输出217
9.1I/O流的概念及流类库结构217
9.1.1I/O流的概念217
9.1.2流类库结构218
9.2输出流219
9.2.1插入运算符和操纵符219
9.2.2文件输出流223
9.2.3二进制输出文件227
9.2.4字符串输出流228
9.3输入流229
9.3.1使用提取运算符229
9.3.2文件输入流229
9.3.3输入流相关函数229
9.3.4字符串输入流231
9.4输入输出流232
9.5综合实例232
9.6知识扩展237
9.6.1重载输出运算符237
9.6.2重载输入运算符238
9.7小结240
习题240
第10章异常处理242
10.1异常处理的一个简单程序242
10.2异常处理机制243
10.2.1异常243
10.2.2异常处理的任务244
10.2.3异常处理的机制244
10.2.4多个catch结构247
10.3自定义异常类248
10.4C 标准异常类249
10.5综合实例250
10.6知识扩展251
10.6.1异常处理中对象的构造和析构251
10.6.2重抛异常253
10.7小结254
习题254
第11章MFC简介257
11.1MFC的主要特征257
11.1.1封装258
11.1.2继承258
11.1.3虚拟函数和动态约束258
11.1.4MFC的宏观框架体系259
11.2MFC和Win32259
11.3CObject类261
11.3.1CObject类的定义261
11.3.2CObject类的特性262
11.4MFC中的消息映射264
11.4.1消息的分类264
11.4.2消息结构和消息处理264
11.4.3消息映射的定义266
11.4.4MFC消息映射的实现方法267
11.4.5消息映射的相关宏267
11.4.6消息映射声明268
11.4.7消息映射实现270
11.4.8消息映射宏271
11.5MFC窗口过程273
11.5.1MFC窗口过程的指定273
11.5.2对Windows消息的接收和处理273
11.5.3对命令消息的接收和处理273
11.5.4对控制通知消息的接收和处理273
11.6对象创建274
11.6.1对象创建与相互关系274
11.6.2MFC提供的接口275
11.7小结275
习题275
第12章MFC绘图基础276
12.1绘图相关的概念276
12.1.1图形设备接口CDC276
12.1.2图形对象类277
12.2常用绘图函数278
12.3动画制作283
12.4绘图实例293
12.5小结297
习题298
第13章课程设计299
13.1C 设计模式299
13.1.1课程设计的目的和意义299
13.1.2课程设计的基本要求299
13.1.3课程设计的技术要点300
13.1.4Factory模式简介300
13.1.5Singleton模式303
13.1.6设计模式报告基本格式305
13.2人事管理系统305
13.2.1人事管理系统设计的目的和意义306
13.2.2人事管理系统设计的基本要求306
13.2.3人事管理系统设计技术要点306
13.2.4人事管理系统开发步骤简介306
13.2.5人事管理系统报告基本格式320
13.3坦克大战游戏321
13.3.1坦克大战游戏设计的目的和意义321
13.3.2坦克大战游戏设计的基本要求322
13.3.3坦克大战游戏设计的技术要点322
13.3.4坦克大战游戏报告基本格式345
13.4贪吃蛇游戏346
13.4.1贪吃蛇游戏设计的目的和意义346
13.4.2贪吃蛇游戏设计的基本要求347
13.4.3贪吃蛇游戏设计的技术要点347
13.4.4贪吃蛇游戏报告基本格式355
13.5五子棋游戏356
13.5.1五子棋游戏设计的目的和意义356
13.5.2五子棋游戏设计的基本要求356
13.5.3五子棋游戏设计的技术要点357
13.5.4五子棋游戏报告基本格式362
参考文献363
|
內容試閱:
|
计算机程序设计是一门实践性很强的课程,也是计算机科学及其相关专业理论和实践相结合的一门课程。多年来,各大高等院校把C/C 程序设计当作计算机专业课程体系中的一门必修课。
C 自从诞生之日起,以其简洁、高效、描述能力强被业界所重视。相比C语言,C 所支持的面向对象编程模式,是一种分析问题、解决问题的新理念。这种模式更贴合实际情形,符合现实中人们解决问题的基本思路和方法。选择C 作为教学语言,其实用性和前瞻性不言而喻。C 通过类、对象、继承、多态、参数化程序设计以及异常等机制很好地支持了面向对象模式对实际问题的解决。因此,选择C 作为高等院校计算机及其相关专业学生的必修课程,有着非常重要的意义。
本书的编写者都是长年奋战在教学一线的老教师,有着较为深厚的理论功底和教学经验。在长期的实践教学中,他们深感有一本言简意赅、叙述清楚、文字深入浅出,适合教学实情的教材的迫切性。这样的教材应该具有以下特征: 一是能适应有良好C语言基础的学生学习的需要;二是能让没有较好掌握C语言的学生有过渡和进行系统学习的机会;三是全书的知识体系要完整,章节、知识点的编排要合理,能适应一般工科院校的教学,让从教者能以清晰明了的教学思路传授C 的知识体系。
正是秉承着这样的编写指导思想,我们联合了省内外几所高校的多位具有丰富教学经验的老教师,将他们平时在教学上积累的知识和当前主流的C 经典教材中的内容进行融合,并进行了适当的取舍,编写了本书。本书力争做到知识结构合理,各个章节相互联系又独立成篇,知识点过渡衔接自然,叙述清楚,简洁易懂,案例丰富,让学习者能抓住知识的重点,并能比较轻松地构建自己学习C 语言的知识框架体系。
本书共13章,第1章介绍C 语言的一些基本概念和主要特征,让读者对于C 语言有一个总体的了解。第2章简要介绍C 的一些基础知识,同时复习C/C 的一些基本语法结构。第3章介绍函数的相关知识,包括C 所支持的一些新的函数机制,如内联函数、重载函数等。第4章阐述类与对象的相关内容,本章是面向对象概念的主体部分,是全书的核心和重点之一。第5章讨论C 中对于数据共享的相关机制,以及一般C 程序的组织结构。第6章对C语言中已经学习过的数组、指针和字符串做复习和进一步的讨论。第7章、第8章分别介绍继承与派生及多态,继承和多态是面向对象中的高级技术,它们扩展了现有类的功能,并提供了更多的、以虚拟现实的方式解决编程中问题的途径。第9章介绍流类库与输入输出,描述了在C 环境下,如何实现基本数据类型及其他类型数据输入输出的相关问题,以及文件使用的相关知识。第10章介绍异常处理,该章讨论面向对象编程中一种应对意外事件的解决方案——异常,它也是面向对象知识体系中的重点学习内容。第11章主要是针对时下主流的VC编译环境,介绍MFC的一些基础知识,让学生对VC系统自带的类库有个初步的了解。第12章主要介绍在MFC类框架下,基本绘图功能和一些基础动画的实现过程和原理。第13章是课程设计的内容,其目的在于学习前面章节之后,做一些综合性的训练,提升学生的综合运用能力。
C 语言程序设计目录本书可作为一般工科高等院校计算机类或者信息类相关专业“面向对象编程技术”课程的教材,建议理论课时为50~60学时,上机学时为16学时左右,课程设计为20学时左右。各院校可以根据本校的专业特点和学生具体情况,酌情增、删学时。
本书由安徽工业大学汤亚玲、胡增涛任主编,编写部分章节并负责全书的统稿,以保证全书风格和内容的统一;由安徽工程大学汪军、姚红燕,福建理工大学林芳,安徽工业大学张学锋、柯栋梁、李伟任副主编。其中第1章、第3章、第12章由汤亚玲编写,第7章、第8章由胡增涛编写,第11章由汪军编写,第13章由张学锋编写,第4章、第9章由林芳编写,第2章、第5章由柯栋梁编写,第10章由李伟编写,第6章由姚红燕编写。
因编者水平有限,书中难免有不足甚至错误之处,敬请广大师生读者批评、指正。
作者2024年4月
|
|