目录 1
CONTENTS 1
第1章 概述 1
1.1 程序设计语言 1
1.1.1 程序设计语言的发展 1
1.1.2 C语言发展简史 2
1.2 C语言的特点 2
1.3 C语言程序的结构 3
1.3.1 简单的C语言程序举例 3
1.3.2 C语言程序的结构 4
1.3.3 源程序书写规则 6
1.4 C语言程序的上机环境 6
练习题 9
第2章 数据类型及其运算 11
2.1 数据类型 11
2.2 常量 11
2.2.1 标识符 11
2.2.2 常量 14
2.2.3 各种类型常量的表示 15
2.3.2 变量赋初值 16
2.3.1 各种类型的变量表示 16
2.3 变量 16
2.4 数据类型的转换 17
2.5 运算符及表达式 18
2.5.1 算术运算符及其表达式 19
2.5.2 关系运算符及其表达式 20
2.5.3 逻辑运算符及其表达式 20
2.5.4 赋值运算符及其表达式 21
2.5.5 其他运算符及其表达式 22
练习题 24
3.1.1 赋值语句 26
3.1 顺序结构 26
第3章 C语言控制结构 26
3.1.2 数据输出函数 27
3.1.3 数据输入函数 30
3.1.4 顺序结构程序应用举例 33
3.2 选择结构 34
3.2.1 if语句 34
3.2.2 if…else语句 35
3.2.3 if语句嵌套 37
3.2.4 switch语句 38
3.2.5 条件运算符 40
3.2.6 选择结构程序应用举例 41
3.3 循环结构 43
3.3.1 while语句 44
3.3.2 do…while语句 45
3.3.3 for语句 45
3.3.4 循环嵌套 47
3.3.5 辅助循环控制语句 48
3.3.6 循环结构程序应用举例 51
练习题 52
4.1.1 一维数组的定义 54
4.1 一维数组 54
第4章 数组 54
4.1.2 一维数组的初始化 55
4.1.3 一维数组的引用 56
4.1.4 一维数组程序应用举例 56
4.2 多维数组 60
4.2.1 二维数组的定义 60
4.2.2 二维数组的初始化 61
4.2.3 二维数组的引用 62
4.2.4 二维数组程序应用举例 62
4.3.1 字符数组的定义 65
4.3 字符数组和字符串 65
4.3.2 字符数组的初始化 66
4.3.3 字符数组的引用 66
4.3.4 字符串 67
4.3.5 字符数组和字符串的输入输出 68
4.3.6 字符串函数 71
4.3.7 字符数组程序应用举例 73
练习题 76
第5章 函数 78
5.1 模块化程序设计概述 78
5.2.2 函数的定义 79
5.2 函数定义与函数声明 79
5.2.1 函数分类 79
5.2.3 函数参数 82
5.2.4 函数声明 83
5.3 函数调用 84
5.3.1 函数调用格式 84
5.3.2函数的嵌套调用 85
5.3.3 函数的递归调用 86
5.3.4 数组作为函数参数 88
5.4 变量的作用域及存储方式 91
5.4.1 局部变量与全局变量 92
5.4.2 动态存储变量与静态存储变量 95
5.5 内部函数和外部函数 99
5.6 函数程序应用举例 101
练习题 105
第6章 编译预处理 109
6.1 宏 109
6.2 文件包含 113
6.3 条件编译 114
练习题 117
7.1 指针的概念 119
第7章 指针 119
7.2 指针变量 120
7.2.1 指针变量的定义 120
7.2.2 指针变量的运算 121
7.3 指针与数组 123
7.3.1 指向一维数组元素的指针 124
7.3.2 指向多维数组元素的指针 126
7.3.3 指针数组 129
7.4 指针与字符串 131
7.5 指针与函数 133
7.5.1 指针变量作为函数参数 133
7.5.2 指向数组的指针做函数参数 136
7.5.3 函数的指针和指向函数的指针变量 140
7.6 指向指针的指针 143
7.7 指针程序应用举例 144
练习题 147
第8章 结构体与共用体 151
8.1 结构体类型 151
8.1.1 结构体类型概述 151
8.1.2 结构体变量的定义 151
8.1.4 结构体类型变量的引用 153
8.1.3 结构体变量的初始化 153
8.2 结构体数组 155
8.2.1 数组的定义 155
8.2.2 结构体数组的初始化 155
8.2.3 结构体数组元素的引用 156
8.3 结构体与函数 157
8.3.1 结构体变量作为函数参数 157
8.3.2 返回结构体类型的函数 160
8.4 结构体与指针 162
8.4.1 指向结构体变量的指针 162
8.4.2 指向结构体数组的指针 163
8.5.1 动态存储分配 165
8.5 链表 165
8.5.2 链表概述 166
8.5.3 建立链表 167
8.5.4 链表的基本操作 169
8.6 共用体 174
8.6.1 共用体的概念 174
8.6.2 共用体变量的定义与引用 174
8.6.3 用体变量的应用 175
8.7.1 枚举类型的概念 177
8.7.2 枚举类型变量的定义 177
8.7 枚举类型 177
8.7.3 应用举例 178
8.8 用typedef定义类型 178
8.9 结构体类型程序应用举例 179
练习题 183
第9章 位运算 184
9.1 概述 184
9.2 位运算符及其应用 184
9.2.1 位运算符及其应用 184
9.2.2 位运算应用举例 187
练习题 188
10.1.1 文件的概念 189
第10章 文件 189
10.1 概述 189
10.1.2 缓冲文件系统和非缓冲文件系统 190
10.2 文件类型指针 190
10.3 文件的打开与关闭 190
10.3.1 文件的打开——fopen函数 191
10.3.2 文件的关闭——fclose函数 192
10.4 文件的读写 192
10.4.1 读写单个字符 192
10.4.2 读写一个字符串 195
10.4.3 数据块的读写 197
10.5.1 文件的定位 199
10.5 文件的定位 199
10.5.2 文件的随机读写 200
10.6 文件应用举例 201
练习题 202
附录A 程序调试方法 204
附录B ASCII字符编码表 217
附录C C语言的关键字 218
附录D 运算符及其结合性 219
附录E 库函数 220
参考文献 227