第一章 C语言概况 1
第一节 C语言的发展 1
第二节 C语言的特点 2
第三节 C和C++ 3
第四节 Visual C++ 4
习题一 5
第二章 C++程序设计基础 6
第一节 概述 6
第二节 面向对象基本概念 6
第三节 C++程序概念 7
一、源程序结构 7
二、源程序概念 9
三、书写格式 10
四、输入输出 12
五、注释 15
六、预处理 16
第四节 程序举例 18
习题二 20
第三章 常量、变量与表达式 21
第一节 数据类型 21
一、基本数据类型 21
二、复合数据类型 22
第二节 标识符 23
第三节 常量 23
第四节 变量 27
一、变量的定义 27
二、变量的类型 28
一、概述 30
第五节 运算符与表达式 30
二、算术运算符与算术表达式 31
三、类型转换 32
第六节 赋值运算符和赋值表达式 33
一、赋值运算符 33
二、赋值中的类型转换 34
三、复合赋值号 34
四、位运算符 35
第七节 自增和自减运算符 35
第八节 逗号运算符和逗号表达式 37
一、定义 37
二、说明 37
二、逻辑表达式 38
一、逻辑运算符 38
第九节 逻辑运算符和逻辑表达式 38
第十节 等值、关系运算符和关系表达式 39
一、等值、关系运算符 39
二、关系表达式 40
第十一节 sizeof运算符 40
第十二节 条件运算符和条件表达式 40
一、条件运算符 40
二、条件表达式 41
三、例 42
第十三节 位运算符与位运算 42
一、位运算符 42
二、位运算 46
三、例 46
习题三 48
第十四节 运算优先级别 48
第四章 库函数与输入输出 51
第一节 库函数的概念 51
第二节 基本输入输出函数 51
第三节 基本输出函数 52
一、putchar 52
二、puts 53
三、printf 53
四、格式字符 54
五、注意和说明 59
第四节 基本输入函数 60
一、getc 60
二、getche 60
四、getchar 61
三、gets 61
五、scanf 62
第五节 例 65
习题四 66
第五章 程序的基本结构和语句 67
第一节 程序的三种基本结构 67
一、顺序结构 67
二、分支结构 67
三、重复结构 67
第二节 语句 68
一、概述 68
二、表达式语句 68
三、函数调用语句 68
六、声明语句 69
五、空语句 69
四、赋值语句 69
七、复合语句 70
八、if语句 70
九、switch语句 74
第三节 循环结构 76
一、while 76
二、for 77
三、do-while 78
四、循环嵌套 79
五、与循环有关的语句 80
习题五 83
第一节 一维数组 87
一、定义 87
第六章 数组 87
二、数组的初始化 88
三、字符数组的初始化 89
四、数组拷贝 89
五、例 89
第二节 多维数组 91
一、定义 91
二、初始化 92
三、例 93
第三节 字符数组 94
一、定义 94
二、初始化 94
三、二维字符数组的定义和初始化 95
四、字符串 95
五、输入与输出 96
六、字符串处理函数 97
七、例 99
习题六 100
第七章 函数和作用域 103
第一节 函数 103
一、引言 103
二、定义 103
三、空函数 104
四、调用 105
五、参数 108
六、返回值 109
八、例 111
九、嵌套 111
七、void 111
十、递归 113
十一、数组参数 114
第二节 作用域 117
一、分程序 118
二、作用域 118
三、局部变量(内部变量) 118
四、存储类 119
五、外部变量(全局变量) 119
六、自动变量 122
七、静态变量 123
八、寄存器变量 124
九、存储类小结 125
一、内部函数 126
二、外部函数 126
第三节 内部和外部函数 126
习题七 127
第八章 指针 131
第一节 指针变量 131
一、指针和指针变量的概念 131
二、指针变量的定义和指针运算 131
第二节 指针变量与函数参数 133
一、单个变量 133
二、数组 135
第三节 指针与数组 137
一、指向数组元素 137
二、指针运算 138
三、例 140
四、多维数组 141
二、指向字符串 145
第四节 字符指针 145
一、指向字符 145
第五节 函数指针 147
一、用函数指针变量调用函数 147
二、用函数指针变量作参数 149
第六节 返回指针值的函数 151
第七节 指针数组 152
第八节 指向指针的指针 154
第九节 小结 154
习题八 156
第九章 数据类型续介 160
第一节 结构 160
一、定义 160
二、引用 162
三、初始化 163
四、结构数组 164
五、指向结构的指针 165
六、结构指针作函数参数 167
七、指向自身结构的指针 168
八、动态存储分配函数 168
第二节 链表 169
一、概述 169
二、建立链表 170
三、输出链表 172
四、查找某元素 173
五、插入 173
六、删除 174
一、二叉排序树 176
第三节 二叉树 176
七、例 176
二、中序遍历 177
三、例 177
第四节 联合 180
第五节 枚举 181
第六节 typedef 183
习题九 184
第十章 文件 187
第一节 文件概念 187
一、缓冲文件 187
二、FILE 187
第二节 文件的打开与关闭 188
一、fopen 188
二、fclose 189
一、fgetc和fputc 190
第三节 文件的读写 190
二、fscanf和fprintf 192
三、fread和fwrite 193
四、标准I/O文件 195
五、fseek 195
第四节 出错检测 197
一、ferror 197
二、clearerr 197
第五节 非缓冲文件系统 197
一、open 197
三、creat 198
四、read 198
二、close 198
五、write 199
六、lseek 199
第六节 小结 200
习题十 201
附录 202
附录一 Microsoft C上机过程 202
附录二 CI-C86 C语言系统上机操作方法 203
附录三 Turbo C上机运行方法 204
附录四 C库函数 206
附录五 标准ASCII码表 213
附录六 C++保留字 217
附录七 C++操作符集 217
附录八 习题参考答案 219
主要参考文献 256