第1章 C语言概述 1
1.1 C语言概述 1
1.1.1 C语言的特点 2
1.1.2 C语言源程序的结构特点 2
1.1.3 书写程序时应遵循的规则 3
1.1.4 C语言的字符集 3
1.1.5 C语言词汇 3
1.2 编制并运行一个简单程序 5
1.2.1 编制并运行程序的“四步曲” 5
1.2.2 工程(Project)以及工程工作区(Project Workspace) 5
1.2.3 启动并进入VC6.0的集成开发环境 6
1.2.4 创建工程并输入源程序代码 7
1.2.5 不创建工程,直接输入源程序代码 11
1.2.6 编译、连接而后运行程序 11
1.2.7 及时备份自己的创作 12
1.2.8 将自己设计的产品提供给他人使用 13
1.3 VC6.0开发环境使用参考 13
1.3.1 VC6.0常用菜单命令项 13
1.3.2 VC6.0的主要工作窗口 15
习题 17
第2章 C语言常见错误 20
第3章 C语言程序基础 25
3.1 C语言的数据类型 25
3.2 常量与变量 27
3.2.1 常量和符号常量 27
3.2.2 变量 28
3.3 整型数据 28
3.3.1 整型常量的表示方法 28
3.3.2 整型变量 29
3.4 实型数据 33
3.4.1 实型常量的表示方法 33
3.4.2 实型变量 34
3.4.3 实型常数的类型 36
3.5 字符型数据 36
3.5.1 字符常量 36
3.5.2 转义字符 36
3.5.3 字符变量 37
3.5.4 字符数据在内存中的存储形式及使用方法 37
3.5.5 字符串常量 39
3.6 变量赋初值 39
3.7 各类数值型数据之间的混合运算 40
3.8 算术运算符和算术表达式 41
3.8.1 C语言运算符简介 42
3.8.2 算术运算符和算术表达式 42
3.9 赋值运算符和赋值表达式 45
3.10 关系运算符和表达式 47
3.10.1 关系运算符及其优先次序 47
3.10.2 关系表达式 47
3.11 逻辑运算符和表达式 49
3.11.1 逻辑运算符及其优先次序 49
3.11.2 逻辑运算的值 49
3.11.3 逻辑表达式 50
3.12 逗号运算符和逗号表达式 51
3.13 条件运算符和条件表达式 52
3.14 小结 53
3.14.1 C语言的数据类型 53
3.14.2 基本类型的分类及特点 54
3.14.3 常量后缀 54
3.14.4 常量类型 54
3.14.5 数据类型转换 54
3.14.6 运算符优先级和结合性 54
3.14.7 表达式 55
习题 55
第4章 顺序程序设计 61
4.1 C语句概述 61
4.1.1 控制语句 61
4.1.2 表达式语句 62
4.1.3 复合语句 63
4.2 数据的输入和输出 63
4.2.1 单个字符的输出——putchar()函数 64
4.2.2 单个字符的输入——getchar()函数 64
4.2.3 puts函数(字符串、字符数组中字符串输出函数) 65
4.2.4 gets函数(字符串输入函数) 65
4.2.5 printf函数(格式输出函数) 65
4.2.6 scanf函数(格式输入函数) 68
4.3 顺序结构程序设计举例 70
习题 72
第5章 选择结构程序设计 78
5.1 if语句 78
5.2 switch语句 82
5.3 选择结构程序设计举例 84
习题 86
第6章 循环结构程序设计 92
6.1 while语句(当型循环) 92
6.2 do-while语句(直到型循环) 95
6.3 for语句(当型循环) 96
6.4 break和continue语句 99
6.5 应用举例 100
习题 101
第7章 数组 108
7.1 一维数组的定义和引用 108
7.1.1 一维数组的定义方式 108
7.1.2 一维数组元素的引用 109
7.1.3 一维数组的初始化 111
7.1.4 一维数组程序举例 112
7.2 二维数组的定义和引用 113
7.2.1 二维数组的定义 113
7.2.2 二维数组元素的引用 114
7.2.3 二维数组的初始化 115
7.2.4 二维数组程序举例 116
7.3 字符数组 117
7.3.1 字符数组的定义 117
7.3.2 字符数组的初始化 117
7.3.3 字符数组的引用 118
7.3.4 字符串和字符串结束标志 118
7.3.5 字符数组的输入/输出 119
7.3.6 字符串处理函数 120
7.4 程序举例 123
习题 126
第8章 函数 137
8.1 概述 137
8.2 函数定义的一般形式 139
8.3 函数的参数和函数的值 141
8.3.1 形式参数和实际参数 141
8.3.2 函数的返回值 142
8.4 函数的调用 142
8.4.1 函数调用的一般形式 142
8.4.2 函数调用的方式 143
8.4.3 被调用函数的声明和函数原型 144
8.5 函数的嵌套调用 145
8.6 函数的递归调用 146
8.7 数组作为函数参数 149
8.8 局部变量和全局变量 154
8.8.1 局部变量 155
8.8.2 全局变量 156
8.9 变量的存储类别 158
8.9.1 静态存储方式与动态存储方式 158
8.9.2 auto变量 158
8.9.3 用static声明局部变量 159
8.9.4 register变量 160
8.9.5 用extern声明外部变量 160
习题 161
第9章 预处理命令 169
9.1 概述 169
9.2 宏定义 170
9.2.1 无参宏定义 170
9.2.2 带参宏定义 173
9.3 文件包含 178
9.4 条件编译 178
9.5 本章小结 181
习题 181
第10章 指针 187
10.1 地址指针的基本概念 187
10.2 变量的指针和指向变量的指针变量 188
10.2.1 定义一个指针变量 189
10.2.2 指针变量的引用 189
10.2.3 指针变量作为函数参数 193
10.2.4 指针变量几个问题的进一步说明 196
10.3 数组指针和指向数组的指针变量 199
10.3.1 指向数组元素的指针 200
10.3.2 通过指针引用数组元素 201
10.3.3 数组名作函数参数 203
10.3.4 指向多维数组的指针和指针变量 210
10.4 字符串的指针指向字符串的指针变量 213
10.4.1 字符串的表示形式 213
10.4.2 使用字符串指针变量与字符数组的区别 216
10.5 函数指针变量 217
10.6 指针型函数 218
10.7 指针数组和指向指针的指针 220
10.7.1 指针数组的概念 220
10.7.2 指向指针的指针 223
10.7.3 main函数的参数 224
10.8 有关指针的数据类型和指针运算的小结 226
10.8.1 有关指针的数据类型的小结 226
10.8.2 指针运算的小结 226
习题 227
第11章 结构体与共用体 240
11.1 定义一个结构的一般形式 240
11.2 结构类型变量的说明 241
11.3 结构变量成员的表示方法 243
11.4 结构变量的赋值 244
11.5 结构变量的初始化 244
11.6 结构数组的定义 245
11.7 结构指针变量的说明和使用 247
11.7.1 指向结构变量的指针 247
11.7.2 指向结构数组的指针 249
11.7.3 结构指针变量作函数参数 250
11.8 共用体类型 251
11.8.1 共用体的定义 251
11.8.2 共用体变量的引用 252
11.9 动态存储分配 255
11.10 枚举类型 257
11.10.1 枚举类型的定义和枚举变量的说明 257
11.10.2 枚举类型变量的赋值和使用 258
11.11 类型定义符typedef 259
习题 260
第12章 位运算与文件 267
12.1 位运算及其运算符 267
12.2 文件 268
12.2.1 C语言文件概述 268
12.2.2 文件的打开与关闭 269
12.2.3 文件的读写 271
12.2.3 出错检测 276
习题 277
附录Ⅰ 常用字符与ASCII码对照表 279
附录Ⅱ C语言中的关键字 280
附录Ⅲ 运算符优先级和结合性 281
附录Ⅳ Turbo C (V2.0)编译错误信息 282
附录Ⅴ 常用库函数及其标题文件 288
参考文献 293