第1章 计算机基础知识 1
1.1计算机硬件系统的构成及工作原理 1
1.1.1计算机硬件系统的构成 1
1.1.2计算机工作原理 2
1.2计算机软件系统的组成 4
1.3数进制及数据的存储 4
1.3.1数进制 4
1.3.2计算机中数据的表示 5
1.3.3进制转换 5
1.3.4数据在内存中的存储 7
1.4机器语言和高级语言 10
习题 11
2.2算法的概念 12
2.1利用计算机解决实际问题的基本步骤 12
第2章 程序设计基础知识 12
2.2.1算法的特性 13
2.2.2算法的基本结构 13
2.2.3算法的表示 16
2.3结构化程序设计 19
习题 22
第3章 C语言概述 23
3.1C语言发展过程及特点 23
3.2C语言的基本词汇 24
3.3C程序结构 25
3.4C语言程序上机调试过程 27
习题 32
4.1数据结构 33
第4章 数据类型及表达式 33
4.2C语言程序中数据的表示方法 35
4.2.1常量 35
4.2.2变量 39
4.3运算符及其表达式 43
4.3.1C运算符概述 43
4.3.2算术运算符及算术表达式 45
4.3.3自增自减运算符及含自增自减表达式 46
4.3.4赋值运算符和赋值表达式 47
4.3.5逗号运算符和逗号表达式 49
4.3.6表达式小结 50
4.4C语言中的类型转换 50
4.4.1类型的自动转换 50
4.4.2强制的类型转换 55
习题 56
第5章 顺序结构程序设计 58
5.1语句 58
5.1.1语句的概念 58
5.1.2C语句的分类 58
5.1.3语句和表达式的区别 59
5.2库函数的使用 60
5.2.1库函数的使用 60
5.2.2常用的输出函数 60
5.2.3常用的输入函数 66
5.2.4数学函数 69
5.3顺序结构程序设计 70
习题 72
6.1逻辑量的表示方法 75
6.1.1关系表达式 75
第6章 选择结构程序设计 75
6.1.2逻辑运算和逻辑表达式 76
6.1.3实际问题中逻辑量的描述 77
6.2if语句 78
6.2.1if语句的格式 78
6.2.2if语句的嵌套及多条件结构的实现 80
6.2.3条件表达式 83
6.3switch语句 84
6.4选择结构程序设计举例 86
习题 93
7.1循环的概念 97
第7章 循环结构程序设计 97
7.2实现循环的语句 98
7.2.1while语句 98
7.2.2do-while语句 102
7.2.3for语句 104
7.2.4if和goto构成的循环 107
7.3break和continue语句 108
7.3.1break语句 108
7.3.2continue语句 110
7.4循环的嵌套 111
7.5循环结构程序设计举例 112
习题 117
8.1.1模块化程序设计思想 122
8.1概述 122
第8章 函数 122
8.1.2C语言程序结构 123
8.1.3使用函数的必要性 124
8.1.4函数的分类 124
8.2函数的定义 124
8.2.1函数的定义形式 125
8.2.2函数的返回值 127
8.2.3形参和返回值的设定 127
8.3函数的调用 128
8.3.1对被调用函数的声明 128
8.3.2函数调用的一般形式 129
8.4函数的嵌套及递归调用 132
8.4.1函数的嵌套调用 132
8.3.3函数调用的具体形式 132
8.4.2函数的递归调用 133
8.5局部变量和全局变量 138
8.5.1局部变量 138
8.5.2全局变量 139
8.6变量的存储类别 139
8.6.1自动存储类型 140
8.6.2寄存器存储类型 140
8.6.3外部存储类型 140
8.6.4静态存储类型 141
8.7函数举例 142
习题 145
第9章 数组 150
9.1数组的概念 150
9.2.1一维数组的定义 151
9.2一维数组 151
9.2.2一维数组元素的初始化 152
9.2.3一维数组元素的引用 153
9.2.4一维数组举例 154
9.3多维数组的定义和使用 157
9.3.1多维数组的定义 157
9.3.2二维数组元素的初始化 158
9.3.3多维数组元素的使用 159
9.3.4二维数组举例 160
9.4字符数组及字符串 163
9.4.1字符数组的定义、引用及初始化 163
9.4.2字符串及字符串处理函数 165
9.4.3字符数组举例 168
9.5数组作函数参数 170
9.5.1数组元素作函数的参数 170
9.5.2数组名作函数的参数 171
9.5.3多维数组名作函数参数 176
习题 176
第10章 指针 180
10.1指针的基本概念 180
10.1.1变量的直接访问和间接访问 180
10.1.2指针与指针变量 181
10.2指针变量 182
10.2.1指针变量的类型和指针变量指向变量的关系 182
10.2.2指针变量的引用 184
10.2.3指针的运算 187
10.2.4指针变量作为函数参数 189
10.3数组的指针 192
10.3.1一维数组的指针 193
10.3.2数组名作为函数参数和指针变量作为函数参数的一致性 196
10.3.3多维数组的指针 198
10.3.4字符串的指针 202
10.4函数的指针和返回指针值的函数 208
10.4.1函数的指针 208
10.4.2指向函数的指针变量 208
10.4.3指向函数的指针变量作函数参数 210
10.4.4返回指针值的函数 213
10.5指针数组与指向指针的指针 215
10.5.1指针数组 215
10.5.2指向指针的指针 219
10.5.3命令行参数 220
习题 222
第11章 结构体、联合体与枚举类型 225
11.1结构体的概念 225
11.1.1结构体类型的定义 225
11.1.2结构体变量的定义、引用、初始化 226
11.1.3结构体的嵌套 231
11.2结构体数组 234
11.2.1结构体数组的定义 234
11.2.2结构体数组的引用 235
11.2.3结构体数组的初始化 236
11.3结构体指针 237
11.3.1指向结构体变量的指针 237
11.3.2指向结构体数组的指针 239
11.3.3结构体指针作函数参数 241
11.4.1链表的概念 242
11.4链表 242
11.4.2内存的动态存储、分配与释放函数 243
11.4.3链表的操作 245
11.5联合体数据类型 254
11.5.1联合体的定义 254
11.5.2联合体变量的引用 255
11.6枚举数据类型 259
11.6.1枚举类型的定义 260
11.6.2枚举变量的定义和引用 260
11.7自定义类型 262
习题 263
12.1.1文件的概念 265
第12章 文件 265
12.1文件概述 265
12.1.2缓冲文件系统 266
12.2文件的使用 266
12.2.1文件类型指针 266
12.2.2文件的打开 267
12.2.3文件的关闭 268
12.2.4文件的读写 269
12.2.5文件的定位 275
12.2.6文件的检测 277
12.3文件程序设计举例 277
习题 280
13.1中断 281
13.1.1中断的概念 281
第13章 中断和位运算 281
13.1.2BIOS中断 282
13.1.3DOS中断 283
13.2位运算 284
13.2.1位运算符 284
13.2.2位运算举例 291
13.3位段 293
13.3.1位字段结构体的定义 293
13.3.2位字段结构体变量成员的引用 295
习题 296
第14章 C语言图形设计 298
14.1显示器的显示属性 298
14.1.1图形的初始化及关闭 298
14.1.2图形状态下的色彩选择及设置 301
14.2常用的图形处理函数 302
习题 310
第15章 编译预处理 311
15.1概述 311
15.2宏定义 311
15.2.1不带参数的宏定义 311
15.2.2带参数的宏定义 315
15.3文件包含 317
15.4条件编译 319
习题 321
附录A 常用字符ASCII码表 324
附录B C的运算符、优先级和结合性 326
附录C TurboC常用库函数 327
参考文献 332