什么是C程序 1
如何让我们的C程序运行起来! 3
这个程序是怎么被执行的? 7
注意C中字母的大小有别 8
一、基本数据类型 10
C语言提供的基本数据类型有哪些 10
常量和变量 10
C语言的基本数据类型及其表示 13
二、运算符和表达式 20
给变量赋初值 20
运算符和表达式 21
数据类型的转换 27
一、格式输出、输入函数 31
格式输出函数printf 31
格式输入函数scanf 36
二、字符输入输出函数 38
字符输出函数putchar 38
字符输入函数getchar 39
三、应用举例 39
一、程序的三种基本结构 45
顺序结构 45
选择结构 45
循环结构 47
程序的流程图 48
二、选择控制语句 49
关系运算符和关系表达式 49
逻辑运算符和逻辑表达式 50
条件运算符和条件表达式 52
条件选择语句if 53
分支结构switch 59
三、循环控制语句 63
for循环语句 63
while循环语句 66
do while循环语句 68
多重循环语句 69
break语句和continue语句 70
一、一维数组 76
一维数组的定义 76
一维数组元素的赋值和初始化 77
一维数组的程序举例 80
二、二维数组 85
二维数组的定义 86
二维数组元素的赋值和初始化 87
二维数组程序举例 89
三、字符数组 90
字符数组的定义 91
字符数组的初始化 91
四、字符串和字符串处理 92
字符串的定义 92
字符串的初始化 92
字符串的输入输出 93
字符串处理函数 96
一、函数的定义与调用 109
什么是函数 109
函数的定义 111
函数的声明 117
函数的调用 117
二、参数传递 122
三、递归函数 124
四、变量的作用域与生存期 126
变量的作用域 126
变量的生存期和存储类型 129
一、宏定义 135
不带参数的宏定义 135
带参数的宏定义 137
二、文件包含 138
三、多文件程序 139
一、指针 142
什么是指针 142
指针的定义 144
指针的运算 149
二、指针与数组 152
指针与数组的关系 152
应用举例 157
指针数组 161
三、指针、数组与函数 165
指针作函数的参数 165
数组与函数 168
用变量的地址作为函数的实参 170
返回指针的函数 171
四、利用指针动态分配内存 172
一、结构体类型 179
什么是结构体 179
结构体的定义 180
定义结构体变量 181
结构体变量的初始化 184
结构体数组 187
结构体指针 189
结构体与函数 193
二、结构体在链表中的应用 198
什么是链表 198
如何建立链表 200
链表的输出 204
统计链表结点的个数 206
链表结点的查找 206
链表的插入 207
删除一个结点 212
三、枚举类型 214
枚举类型的定义 214
枚举变量的声明 215
枚举类型变量的赋值和使用 215
枚举类型的应用举例 217
一、编写第一个C++程序 223
Hello.cpp你的第一个C++程序 223
运行程序 224
Hello.cpp程序代码分析 225
在VisualC++6.0下实现基于控制台的C++程序 226
二、C++的输入和输出 228
输出流对象cout使用介绍 228
输入流对象cin使用介绍 231
三、const常量定义和使用 232
一、内联函数 235
二、函数原型 239
三、重载函数 239
四、缺省参数 240
五、引用 242
独立引用 243
引用作为参数传递 244
引用作为返回类型 247
引用与指针的区别 248
一、类和对象 251
新的数据类型“类”的引入 251
类和对象 252
类的定义和实现 253
类的使用 255
类的定义及实现示例程序演示 256
提示:在VisualC++6.0的程序中下添加一个类 256
二、存取访问控制 261
关键字public 261
关键字private 261
关键字protected 264
三、类与结构体 264
四、应用举例 265
一、new和delete 270
new 271
delete 272
二、构造函数和析构函数 273
构造函数 273
析构函数 281
三、再谈new、delete和malloc、free 283
四、this指针 285
五、应用举例 287
一、静态成员 296
静态数据成员 296
静态成员函数 300
二、友元 302
友元函数 302
友元类 304
三、应用举例 306
一、明确目标:为什么要进行运算符重载 309
二、以成员函数实现运算符重载 310
重载一元运算符:递增运算符“++” 311
二元运算符重载:重载加运算符“+” 319
重载赋值运算符“=” 321
三、用友元函数重载运算符 324
用友元函数重载加法运算符“+” 324
重载输出运算符“<<” 327
四、应用举例 328
一、什么是继承 336
二、实现继承 338
单一继承 338
多重继承 343
多级继承 346
三、构造函数、析构函数与继承 347
何时执行构造函数和析构函数 347
将参数传送给基类的构造函数 349
四、继承与友元及静态成员的关系 353
友元与继承 353
静态成员与继承 355
五、应用举例 356
一、虚函数 362
为什么要引入虚函数 362
虚函数与函数重载的区别 368
虚函数与继承的关系 368
虚函数的层次性 368
析构函数与虚函数 370
二、纯虚函数 371
一、格式化输出 374
I/O(输入/输出)控制符介绍 374
格式化输出举例 375
二、文件流 378
文件的打开和关闭 378
文件读写操作举例 379
一、函数模板 384
二、类模板 387
附录ATurbo C2.0的操作 393
设置环境目录 393
编写源程序 394
保存和打开C程序 394
编译和执行C程序 395
获取帮助 395
附录BASCⅡ表 397
附录C常用库函数 397
一、数值函数 397
算术函数 397
三角函数 397
二、字符函数和字符串函数 398
字符函数 398
字符串函数 399
附录D练习答案 402