新書推薦:
《
世界前沿技术发展报告2024
》
售價:HK$
188.2
《
可转债——新手理财的极简工具
》
售價:HK$
65.0
《
新加坡教育:神话与现实
》
售價:HK$
96.3
《
“口袋中的世界史”第一辑·冷战中的危机事件
》
售價:HK$
291.2
《
绝美的奥伦堡蕾丝披肩编织
》
售價:HK$
177.0
《
狂飙年代:18世纪俄国的新文化和旧文化(第二卷)
》
售價:HK$
177.0
《
万有引力书系 纳粹亿万富翁 德国财富家族的黑暗历史
》
售價:HK$
109.8
《
中国常见植物野外识别手册:青海册
》
售價:HK$
76.2
|
編輯推薦: |
1、本书程序例子进行了分类,分成A、B、C三类,A类基本用法,B类演示程序,C类典型程序。2、本书对一些计算的细节作了细致的分析,如实数计算会有误差,阶乘使用双精度保存可以适当避免算术溢出错误。3、练习题围绕提高编程能力,以编程为主,也有综合练习题提供了考试的各类题型。4、附录B有VisualC编写控制台应用程序的简单操作,易于自学入门。5、附录C有使用标准名空间std的程序本书采用与早期不用std的程序之间的差异,以应对不用std的程序的重要考试,如江苏省C等级考试。6、对输入输出流的格式操纵符的实现原理简单作了介绍。
|
內容簡介: |
本书共分4篇,即基础编程、面向过程编程、面向对象编程和泛型编程,内容逐步深入。其中,基础编程篇介绍了选择和循环结构、数据和表达式的基本知识、数组结构和简单的指针使用; 面向过程编程篇介绍了函数的使用、标识符的作用域和变量的存储类型、指针的高级用法和预处理; 面向对象编程篇介绍了类与对象的封装性、继承性和多态性,以及对象的构造、运算符的重载、文件的使用、异常处理等; 泛型编程篇则介绍了模板和简单的STL编程。 本书可作为高等院校低年级学生的教材,也可作为其他相关人员根据不同层次要求学习C语言的参考书。
|
目錄:
|
C O N T E N T S
目录
第一篇基 础 编 程
第1章C概述
1.1C历史背景
1.2C语言的特点
练习题
第2章简单的C程序
2.1流程框图
2.2简单的顺序结构程序
2.3有分支和循环结构的程序
2.3.1有分支结构的程序
2.3.2有循环结构的程序
2.3.3结构化的程序设计及结构化流程图
练习题
第3章数据与运算
3.1引言
3.2字符集与标识符
3.3基本数据类型
3.4常量
3.4.1字面常量
3.4.2符号常量
3.5基本运算及表达式
3.5.1算术运算、比较运算和逻辑运算
3.5.2增量减量运算、赋值运算和逗号运算
3.5.3字符数据的处理
3.6对表达式的进一步说明
3.6.1整数除和算术溢出
3.6.2比较运算的特殊用法
3.6.3前置与后置的增量和减量
3.6.4类型的转换
3.6.5短路表达式
3.7位运算
*3.8数据的输出格式控制
练习题
第4章选择结构和循环结构
4.1if语句及其嵌套
4.2条件表达式
4.3switch语句
4.4while语句和dowhile语句
4.5for语句
4.6break语句和continue语句
*4.7goto语句及语句标号
练习题
第5章复合类型数据
5.1数组
5.1.1一维数组
5.1.2多维数组
5.1.3字符数组及字符串处理
5.1.4字符串处理函数
5.1.5常用数组算法
5.2指针
5.3引用
5.4结构与联合
5.4.1结构
*5.4.2联合
5.5枚举
5.6用typedef定义类型
练习题
第一篇综合练习题
第二篇面向过程编程
第6章函数
6.1函数的定义
6.2函数的参数传递
6.3递归函数、重载函数和默认参数函数
6.3.1递归函数
6.3.2重载函数
6.3.3默认参数函数
6.4内联函数
练习题
第7章作用域和存储类型
7.1标识符的作用域
7.1.1局部作用域和全局作用域
7.1.2标识符的定义与说明以及混合作用域
7.1.3语句作用域
7.1.4名空间及名空间作用域
7.1.5标识符的重名
7.1.6函数说明的隐藏规则
7.2程序的内存映像
7.3变量的存储类型
7.3.1auto类型和static类型
7.3.2register类型
7.3.3无名变量函数值
7.3.4多文件程序中的变量和函数
练习题
第8章指针的高级用法
8.1指针与函数
8.1.1指针作参数
8.1.2指针传递数组和返回指针
*8.2不定参数
8.3各类指针
8.3.1字符指针
8.3.2行指针
8.3.3指针数组与指向指针的指针
8.3.4函数指针
*8.3.5void指针
8.3.6const与指针
8.3.7容易混淆的指针使用
8.4跨函数引用
8.4.1引用型参数
8.4.2返回引用
8.5链表和二叉树
8.5.1单链表
8.5.2双向链表
*8.5.3二叉树
8.6程序中的指针错误用法
练习题
第9章预处理命令
9.1包含命令
9.2宏定义
9.2.1无参宏定义
9.2.2带参宏定义
9.3条件编译命令
9.4程序的编译与连接
练习题
第二篇综合练习题
第三篇面向对象编程
第10章类与对象
10.1类与对象的定义
10.1.1结构的演变
10.1.2类的定义与使用
10.1.3内联成员函数
10.1.4this指针
10.1.5对象的使用
10.2类的构造与析构
10.2.1构造函数与析构函数
10.2.2复制构造函数
10.2.3临时对象
10.2.4调用函数时数据传递中的对象
10.3动态对象与对象数组
10.3.1对象数组的构造与析构
10.3.2动态对象与动态对象数组
10.3.3对象的生命周期
10.4常成员和对象类成员
*10.5内嵌类型
练习题
第11章类的静态成员与类的友元
11.1静态成员
11.1.1静态成员变量
11.1.2静态成员函数
11.1.3静态成员变量与全局变量的比较
11.2类的友元
11.2.1友元函数
11.2.2友元类
练习题
第12章运算符的重载
12.1类成员的运算符重载
12.2非成员的运算符重载
12.3赋值运算符的重载
12.4转换函数
12.5特殊的运算符重载
12.5.1重载和--
12.5.2重载和
12.5.3重载[]、*指向和-
12.5.4重载 和函数对象
12.6string类的使用
练习题
第13章类的继承性
13.1单一派生
13.1.1派生类的定义
13.1.2公有派生、私有派生和保护派生
13.1.3重名的优先级和隐藏
13.2派生类的构造与析构
13.3多重派生
13.4重名的使用规则
13.5派生类的类型兼容
13.6虚基类及复杂类的构造与析构
练习题
第14章类的多态性
14.1虚函数
14.2虚函数的使用规则和内部实现原理
14.2.1虚函数的使用规则
14.2.2虚函数的内部实现原理
14.3纯虚函数与抽象类
练习题
第15章C输入输出系统
15.1C输入输出系统的结构
15.2C流的状态
15.3输入输出成员函数及插入符和提取符
*15.4C流的格式控制
15.5文件流
15.5.1文件的打开与关闭
15.5.2文本文件的使用
15.5.3二进制文件的使用
*15.6字符串流
练习题
第16章异常
16.1异常机制
16.2异常的使用
16.3异常类
练习题
第三篇综合练习题
第四篇泛 型 编 程
第17章模板
17.1函数模板
17.2类模板
练习题
第18章STL编程简介
18.1STL的简单例子
18.2STL容器与迭代器
18.2.1顺序容器
18.2.2关联容器
18.3STL算法
练习题
附录A部分题解及常见错误
附录B计算机基础知识
附录C使用Visual C编写控制台应用程序
附录DC旧版本和C标准的常见区别
参考文献
|
內容試閱:
|
前言
一、 本书的主要特点
本书的编写基于作者在多年的C教学中改进教学形式的尝试。作为C课程教材,作者除了将C的主要内容写入本书外,还进行了一些教材上的补充和尝试,包括以下方面。
本书的C内容兼顾C国际标准和目前还在使用的C旧版本,与大量C旧版本的书籍和某些C考试大纲相通,又顾及C的使用趋势。
本书的结构是从非常基本的C知识到泛型编程知识,共分4篇,第一篇是最基本的编写C程序的知识,用于C编程的快速入门,但也有足够丰富的内容; 第二篇可以使读者编写较为复杂的C程序; 第三篇可以使读者利用面向对象的方法编写大规模的程序; 第四篇则提供了C国际标准提倡的泛型编程方法。
本书在附录部分介绍了计算机基础知识、Visual C软件的基本操作和基本调试功能、C旧版本与新标准的比较。
本书的程序示例分为A、B、C三类,A类程序是最基本的C的用法,B类程序是用于说明某个原理和用法的演示程序,C类程序是比较经典具有实用性的C程序。当读者通过B类程序了解了程序的运行原理后,B类程序几乎可以弃之不用。C类程序是值得熟记的程序。
本书以提高读者编写程序的能力为主要目的,练习基本上是大量的编程题。全书4篇中的前3篇,每一篇的末尾都提供了综合练习题,以类似试卷的形式给读者提供熟悉课程考试和计算机等级考试的题型。
对于本书可以有层次地进行学习,当读者时间有限时可以只学习第一篇,能够基本掌握C编程知识并能编写各种不太复杂的程序,再学一下第6章就可以掌握大量以编程为工具的各种计算机知识。如果不考虑编写大规模程序,学到第二篇就可以了。第三篇是用于设计大规模程序的知识,使用了面向对象的编程方法。第四篇是C发展后期面向对象方法的新的发展泛型编程方法,利用类型作为参数,可以编写更加精致、高效的程序。
书中有少量加*的内容,是选讲或选做的内容。
二、 第2版的改进
本书第1版经过3年的教学使用,发现了一些内容上的不足,针对这些不足,本书做了改进,主要有以下几个方面。
考虑到自学的需要,本书增加了书上部分题解和相关程序编写中容易出现的错误作为附录A,在没有教师指导的情况下,附录A的内容可以作为读者做题的参考,可使读者了解到编程常见的错误,从而提高自己的编程能力。附录A中选择的题目都是编程时容易犯错的题目,或者是常见算法的题目,或者是特别难的题目。前三篇末尾的综合练习题答案和附录B的练习答案也放在附录A的后面。
本书将第1版的Visual C6.0程序全部改成了第2版的Visual Studio 2008程序,剔除了少量多余或重复的程序示例。本书中的内容也针对不同版本做了相应改动,第15章内容改动相对较多。
本书在第8章指针的高级用法中增加了一小节内容,专门讲容易混淆误用的指针表达式以及指针的各种复杂关系。
本书在第10章到第14章的程序中,对象成员函数如show、get等均用const说明为常成员函数,以顺应目前C的编程特点。第12章之后程序使用到的字符串都改为C的string类字符串。
本书中的练习做了少量改动或次序调整,难一些的题目给出了提示。
针对第1版内容有些地方不够详细,而且全书知识重点不够突出的情况,第2版增加了很多注解,并以粗体楷体字的形式突出显示,这些注解集中在C最主要的知识点、易错的知识点、拓展的知识点方面。
三、 致谢
在本书再版的过程中得到了张强老师、黄达明老师的热心帮助,他们的知识和经验融入到了本书第2版的内容中,作者在此向他们及其他直接、间接对本书出版提供过帮助的人表示衷心的感谢。
作者2017年10月
|
|