第1章 编程语言概述 1
1.1 编程语言的发展过程及特点 1
1.1.1 编程语言的发展 1
1.1.2 常用编程语言及适用范围 3
1.1.3 编程语言的功能 4
1.2 程序与程序设计 5
1.2.1 算法 5
1.2.2 程序设计方法 9
1.3 C语言简况 11
1.3.3 C语言程序结构 12
1.3.2 C语言的基本特点 12
1.3.1 C语言的发展 12
1.4 C语言程序的上机实现 14
1.5 本章小结 17
1.6 习题 18
第2章 C语言数据类型与基本操作 19
2.1 C语言的数据类型 19
2.2 常量和变量 19
2.2.1 常量 20
2.2.2 变量 21
2.2.3 各种类型数据的存储和取值范围 24
2.3 运算符和表达式 24
2.3.2 算术运算 25
2.3.1 C语言所提供的运算符 25
2.3.3 变量赋值及赋值运算 27
2.3.4 复合赋值运算 28
2.3.5 逗号运算 28
2.4 不同类型数据间的转换 29
2.4.1 不同类型数据的隐式转换 29
2.4.2 不同类型数据的显式转换 30
2.5 本章小结 30
2.6 习题 30
第3章 简单程序设计 32
3.1 C语言基本语句 32
3.2.1 格式输入函数scanf 34
3.2 数据输入 34
3.2.2 字符输入函数getchar 36
3.3 数据输出 37
3.3.1 格式输出函数printf 37
3.3.2 字符输出函数putchar 40
3.4 简单程序应用举例 41
3.5 本章小结 42
3.6 习题 42
第4章 C语言程序的流程控制 45
4.1 关系及逻辑运算 45
4.1.1 关系运算 45
4.1.2 逻辑运算 46
4.1.3 条件运算 47
4.2 选择结构程序设计 48
4.2.1 if语句 48
4.2.2 switch语句 51
4.3 循环结构程序设计 54
4.3.1 while循环语句 54
4.3.2 do...while循环语句 55
4.3.3 for循环语句 55
4.3.4 循环嵌套 57
4.3.5 continue和break语句 58
4.4 常用程序设计举例 58
4.5 本章小结 61
4.6 习题 62
第5章 数组及其应用 65
5.1 一维数组 65
5.1.1 一组数组的定义 65
5.1.2 数组的初始化 66
5.1.3 数组元素的访问 66
5.1.4 一维数组应用 67
5.2 二维数组 68
5.2.1 二维数组和多维数组的定义 68
5.2.2 二维数组的初始化 69
5.2.3 二维数组元素的引用 70
5.2.4 二维数组应用 70
5.3.1 字符串的处理 72
5.3 字符数组与字符串 72
5.3.2 字符串的输入与输出 73
5.3.3 字符串处理函数 74
5.3.4 字符串应用举例 76
5.3.5 字符串数组 77
5.4 数组应用举例 77
5.5 本章小结 79
5.6 习题 79
第6章 函数 81
6.1 对函数的初步认识 81
6.2 函数定义 82
6.3.1 函数调用 84
6.3 函数的调用及返回 84
6.3.2 函数的返回 85
6.3.3 函数间参数的传递 86
6.4 函数声明 88
6.5 变量的存储属性 89
6.5.1 局部变量与全局变量 89
6.5.2 动态变量与静态变量 93
6.5.3 寄存器变量 95
6.6 本章小结 96
6.7 习题 96
7.1.1 字符串宏替换 98
第7章 编译预处理 98
7.1 宏替换 98
7.1.2 带参数的宏替换 99
7.2 文件包含 101
7.3 条件编译 102
7.4 本章小结 103
7.5 习题 103
第8章 指针 104
8.1 指针的概念 104
8.2 指针变量的定义和引用 105
8.2.1 指针变量的定义 105
8.2.2 指针变量的引用 106
8.2.3 指针变量应用举例 107
8.3 指针与数组 109
8.3.1 一维数组的指针表示法 109
8.3.2 二维数组的指针表示法 112
8.3.3 应用举例 112
8.4 指针与字符串 114
8.5 指针与函数 116
8.5.1 指针变量作为函数的参数 116
8.5.2 返回指针值的函数 119
8.5.3 指向函数的指针变量 121
8.6 本章小结 122
8.7 习题 122
9.1 结构体类型的定义 125
第9章 结构体与共用体 125
9.2 结构体变量 126
9.2.1 结构体类型变量的定义 126
9.2.2 结构体类型变量的引用 128
9.2.3 结构体类型变量的初始化 128
9.3 结构体数组 129
9.3.1 结构体数组的定义 129
9.3.2 结构体数组的初始化 130
9.4 结构体指针 133
9.4.1 指向结构体变量的指针 133
9.4.2 指向结构体数组的指针 134
9.4.3 结构体变量或指针作函数参数 135
9.5 链表的建立与操作 136
9.5.1 什么是链表 137
9.5.2 内存单元的动态分配 138
9.5.3 链表的建立及其他操作 139
9.6 共用体数据类型 144
9.6.1 共用体类型的定义 144
9.6.2 共用体类型变量的定义及引用 144
9.7 枚举类型 146
9.8 本章小结 148
9.9 习题 148
10.1 文件的基本概念 151
第10章 文件 151
10.2 文件的打开与关闭 152
10.2.1 缓冲区文件定义 152
10.2.2 文件的打开 152
10.2.3 文件的关闭 154
10.3 文件的读与写 154
10.3.1 读写一个字符 155
10.3.2 读写一个字符串 158
10.3.3 读写数据字段 160
10.3.4 格式化读写 162
10.4.1 rewind()函数 164
10.4 文件的定位与随机读写 164
10.4.2 fseek()函数 165
10.5 本章小结 167
10.6 习题 167
第11章 位运算 168
11.1 位运算符 168
11.1.1 按位与运算符( ) 168
11.1.2 按位或运算符(|) 169
11.1.3 按位异或运算符(^) 170
11.1.4 取反运算符(~) 170
11.1.5 左移运算符(<<) 171
11.1.6 右移运算符(>>) 171
11.2 位段 172
11.4 习题 175
11.3 本章小结 175
第12章C++语言简介 176
12.1 C++语言概述 176
12.1.1 C++语言的产生及发展 176
12.1.2 C++语言的特点 176
12.2 面向对象的程序设计语言(OOPL) 177
12.2.1 面向对象的程序设计(OOP) 177
12.2.2 OOPL中的基本概念 178
12.2.3 OOPL的特性 179
12.3.1 C++程序实例 181
12.3 C++程序介绍 181
12.3.2 C++程序的基本组成 183
12.4 C++程序的实现 184
12.4.1 编辑C++源程序 184
12.4.2 编译连接和运行源程序 186
12.5 本章小结 189
12.6 习题 189
附录 192
附录A ASCII字符编码表 192
附录B 关键字和运算符 193
参考文献 195