第1章 C语言概述 1
1.1 C语言产生的历史背景 1
1.2 C语言的特点 2
1.3 简单的C程序介绍 3
1.4 C程序的运行环境 6
1.4.1 Turbo C 2.0的运行环境 6
1.4.2 Dev-C++运行环境简介 9
1.4.3 Turbo C/C++ for windows集成实验与学习环境简介 11
1.4.4 Visual C++ 6.0运行环境简介 12
本章小结 13
习题一 13
第2章 算法 14
2.1 算法的概念 14
2.2 算法的特性 16
2.3 算法的表示 16
2.3.1 用自然语言表示算法 17
2.3.2 用传统流程图表示算法 17
2.3.3 用N-S流程图表示算法 20
2.3.4 用计算机语言实现算法 21
2.4 结构化程序设计方法 22
本章小结 23
习题二 23
第3章 C语言基础 24
3.1 C语言数据类型 24
3.2 常量与变量 25
3.2.1 常量 25
3.2.2 变量 27
3.3 运算符及表达式 31
3.3.1 C语言运算符简介 32
3.3.2 算术运算符和算术表达式 33
3.3.3 算术运算符的结合性与优先级 34
3.3.4 关系运算符和关系表达式 34
3.3.5 逻辑运算符和逻辑表达式 35
3.3.6 赋值运算符和赋值表达式 37
3.3.7 逗号运算符和逗号表达式 39
3.3.8 条件运算符和条件表达式 39
3.4 常用数学函数 40
本章小结 42
习题三 42
第4章 顺序结构程序设计 46
4.1 顺序结构程序设计基础 46
4.2 输入函数 47
4.2.1 字符输入函数 47
4.2.2 格式输入函数 48
4.3 输出函数 51
4.3.1 字符输出函数 51
4.3.2 格式输出函数 51
4.4 顺序结构程序举例 53
本章小结 55
习题四 55
第5章 选择结构程序设计 57
5.1 关系运算符和关系表达式 57
5.1.1 关系运算符 57
5.1.2 关系表达式 58
5.2 逻辑运算符和逻辑表达式 59
5.2.1 逻辑运算符及其优先次序 59
5.2.2 逻辑表达式 60
5.3 选择结构实现:if语句 62
5.3.1 if语句的三种形式 63
5.3.2 if语句的嵌套 66
5.3.3 条件运算符 68
5.4 选择结构实现:switch语句 69
5.5 选择结构程序设计举例 71
本章小结 73
习题五 73
第6章 循环结构程序设计 76
6.1 循环结构概述 76
6.2 for循环 77
6.3 break语句和continue语句 79
6.4 while/do...while语句 81
6.4.1 while语句 81
6.4.2 do...while语句 83
6.4.3 goto语句 86
6.5 重要循环及循环嵌套 87
6.6 循环结构程序设计举例 88
本章小结 91
习题六 91
第7章 数组 93
7.1 数组的概念 93
7.2 一维数组 95
7.2.1 一维数组的定义 95
7.2.2 一维数组的使用 96
7.2.3 一维数组应用举例 98
7.3 二维数组 102
7.3.1 二维数组的定义 102
7.3.2 二维数组的使用 103
7.4 字符数组 106
7.4.1 字符数组的定义 106
7.4.2 字符数组的初始化 106
7.4.3 字符数组的输入/输出 107
7.4.4 字符串函数处理函数 108
7.5 数组的应用举例 111
本章小结 114
习题七 114
第8章 函数 119
8.1 函数概述 119
8.2 函数的参数和函数的值 121
8.2.1 形式参数和实际参数 121
8.2.2 函数的返回值 122
8.3 函数的定义 124
8.3.1 无参函数的定义 124
8.3.2 有参函数的定义 125
8.3.3 空函数 126
8.4 函数的调用 126
8.4.1 函数调用的一般形式 126
8.4.2 函数调用的方式 127
8.4.3 被调用函数的声明和函数原型 127
8.4.4 函数的嵌套调用 128
8.4.5 函数的递归调用 130
8.5 数组作为函数参数 131
8.5.1 数组元素作为函数实参 131
8.5.2 数组名作为函数参数 132
8.6 变量作用域和存储类别 136
8.6.1 局部变量和全局变量 136
8.6.2 变量的存储类别 139
8.7 函数应用举例 143
本章小结 145
习题八 146
第9章 指针 149
9.1 指针变量 149
9.1.1 地址及指针概述 149
9.1.2 变量的指针和指向变量的指针变量 151
9.1.3 指针变量的定义 151
9.1.4 指针变量的运算 151
9.1.5 指针变量的引用 153
9.1.6 指针变量作为函数参数 154
9.2 指针和数组 157
9.2.1 指向数组元素的指针变量 157
9.2.2 通过指针引用数组元素 158
9.2.3 用数组的指针作为函数参数 161
9.2.4 多维数组与指针 162
9.3 字符串与指针 165
9.3.1 字符指针的定义与引用 165
9.3.2 字符指针作为函数参数 167
9.4 指针数组 168
9.4.1 用指针数组处理二维数组 168
9.4.2 用字符指针数组处理字符串组 169
9.4.3 用指针数组作为main函数的形参 171
9.5 指向指针的指针 172
9.6 指针与函数 174
9.6.1 指针型函数 174
9.6.2 函数指针变量 175
9.7 程序应用举例 177
本章小结 178
习题九 179
第10章 结构体、枚举类型与共用体 182
10.1 结构体的概念和结构体变量 182
10.1.1 结构体的概念 182
10.1.2 结构体类型的定义 183
10.1.3 结构体类型变量的定义 184
10.1.4 结构体变量的引用 185
10.1.5 结构体变量的初始化 186
10.2 结构体数组和结构体指针 187
10.2.1 结构体数组的定义 187
10.2.2 结构体数组的初始化 188
10.2.3 结构体数组举例 189
10.2.4 结构体指针 189
10.3 枚举类型和共用体简介 191
10.3.1 枚举类型和枚举变量的定义 191
10.3.2 枚举变量的引用 192
10.3.3 共用体类型和共用体变量的定义 193
10.3.4 共用体变量的引用以及共用体类型数据的特点 194
本章小结 195
习题十 195
第11章 文件 200
11.1 文件的基本概念 200
11.2 文件的打开与关闭 201
11.2.1 文件的打开 201
11.2.2 文件的关闭 203
11.3 文件的读写 203
11.3.1 字符与字符串读写函数 204
11.3.2 数据块读写函数fread和fwrite 208
11.3.3 格式化读写函数fscanf和fprintf 210
11.3.4 文件的定位 211
11.3.5 文件检测函数 212
11.4 文件操作举例 213
本章小结 215
习题十一 216
附录A Turbo C 2.0编译错误信息 217
附录B 常用字符与ASCII代码对照表 223
附录C C语言的32个关键字 224
附录D C语言中的运算符及其优先级 226
附录E 参考答案 228
参考文献 240