目录
第1章程序设计基础知识/1
1.1数制1
1.2进制转换2
1.2.1不同进制之间的计数2
1.2.2X进制数转换为十进制数2
1.2.3十进制整数转换为X进制整数3
1.2.4十进制小数转换为X进制小数3
1.2.5二进制数与八进制数之间的转换4
1.3数据在内存中的存储方式4
1.3.1计算机内存的存储单位4
1.3.2定点数与浮点数5
1.3.3整数6
1.3.4浮点数7
1.4算法9
1.4.1什么是算法9
1.4.2程序=算法+数据结构11
1.4.3简单的算法举例12
1.4.4算法的特性15
1.5算法的表示16
1.5.1用自然语言表示算法16
1.5.2用流程图表示算法16
1.5.3三种基本结构20
1.5.4用伪代码表示算法22
1.5.5用计算机语言表示算法23
1.6结构化程序设计方法24
习题126
第2章程序设计与C语言/27
2.1计算机程序概述27
2.2计算机语言概述27
2.3程序设计的概念30〖1〗程序设计基础(C语言版)目录〖3〗〖3〗2.4C语言的发展过程31
2.5C语言的特点33
2.6C语言开发的系统34
2.7简单的C语言程序35
2.7.1最简单的C语言程序举例35
2.7.2C语言程序的结构39
2.8C语言程序的编写与执行42
2.9C语言编译环境的安装与运行44
习题253
第3章顺序结构程序设计/54
3.1标识符与关键字54
3.1.1标识符54
3.1.2关键字55
3.2常量与变量56
3.2.1常量56
3.2.2变量59
3.3基本数据类型60
3.3.1整型61
3.3.2浮点型64
3.3.3字符型65
3.4算术运算符、表达式及运算的优先级66
3.4.1算术运算符66
3.4.2算术表达式与运算优先级66
3.4.3赋值运算符与复合赋值运算符67
3.4.4自增运算符与自减运算符68
3.4.5逗号运算符69
3.4.6不同类型数据的混合运算69
3.4.7强制类型转换运算符70
3.5语句71
3.6数据的输入与输出72
3.6.1格式化输出函数printf()73
3.6.2格式化输入函数scanf()76
3.6.3字符输入输出函数79
3.7顺序结构程序设计举例80
习题382
第4章选择结构程序设计/84
4.1关系运算符与关系表达式84
4.2逻辑运算符与逻辑表达式85
4.3条件运算符与条件表达式87
4.4if语句88
4.4.1ifelse语句88
4.4.2if语句的嵌套92
4.5switch语句96
4.6选择结构程序设计举例102
习题4105
第5章循环结构程序设计/107
5.1while语句107
5.2dowhile语句110
5.3for语句111
5.4改变循环执行的状态113
5.4.1break语句113
5.4.2continue语句115
5.4.3break语句与continue语句的区别115
5.5循环结构的嵌套116
5.6循环结构程序设计举例119
习题5128
第6章数组/131
6.1一维数组131
6.1.1一维数组的定义131
6.1.2一维数组元素的引用132
6.1.3一维数组的初始化134
6.1.4一维数组程序举例136
6.2二维数组142
6.2.1二维数组的定义142
6.2.2二维数组元素的引用144
6.2.3二维数组的初始化144
6.2.4二维数组程序举例146
6.3字符数组150
6.3.1字符数组的定义150
6.3.2字符数组的初始化150
6.3.3字符数组程序举例151
6.3.4字符串和字符串标志152
6.3.5字符串的输入输出154
6.3.6字符串处理函数155
6.3.7字符数组应用举例159
习题6164
第7章函数/166
7.1函数的定义、声明与调用166
7.1.1函数的定义166
7.1.2函数的声明168
7.1.3函数的调用168
7.1.4函数举例170
7.2函数的嵌套调用173
7.3递归函数175
7.4数组作为函数参数180
7.4.1数组元素作函数实参180
7.4.2一维数组名作函数参数181
7.4.3多维数组名作函数参数186
7.5局部变量与全局变量190
7.5.1复合语句190
7.5.2局部变量190
7.5.3全局变量191
7.6变量的作用域与生存期194
7.6.1动态存储方式与静态存储方式195
7.6.2局部变量的存储类别195
7.6.3全局变量的存储类别198
7.7静态函数与外部函数200
7.7.1静态函数201
7.7.2外部函数201
习题7202
第8章指针/204
8.1指针变量204
8.1.1变量的地址204
8.1.2指针变量的定义205
8.1.3指针变量的赋值与应用206
8.1.4指针变量作函数参数208
8.2通过指针引用数组210
8.2.1指向数组元素的指针210
8.2.2指向数组元素的指针变量作函数参数214
8.2.3通过指针引用多维数组216
8.3通过指针引用字符串221
8.3.1字符串的引用221
8.3.2字符指针作函数参数223
8.4通过指针调用函数226
8.4.1函数指针的定义226
8.4.2函数指针的引用226
8.5指针数组和多重指针229
8.5.1指针数组的定义与引用229
8.5.2多重指针234
8.5.3指针数组作main()函数的形参241
8.6指针作为函数的返回值245
8.7动态内存分配251
8.7.1内存动态分配相关函数251
8.7.2空指针NULL以及void指针252
8.7.3动态内存分配程序举例255
习题8258
第9章编译预处理与位运算/260
9.1编译预处理260
9.1.1宏定义260
9.1.2文件包含266
9.1.3条件编译267
9.2位运算270
9.2.1按位取反运算符270
9.2.2按位左移运算符271
9.2.3按位右移运算符273
9.2.4按位与运算符275
9.2.5按位或运算符278
9.2.6按位异或运算符278
9.2.7复合位运算符279
9.2.8位运算符编程举例280
习题9281
第10章用户自定义数据类型/283
10.1结构体283
10.1.1创建结构体类型283
10.1.2定义结构体变量284
10.1.3初始化结构体变量与引用结构体变量286
10.1.4结构体数组290
10.1.5结构体指针294
10.2共用体301
10.2.1共用体类型301
10.2.2共用体类型应用举例303
10.3枚举类型307
10.3.1枚举类型307
10.3.2枚举类型举例309
10.4用typedef声明新类型310
10.5链表313
10.5.1什么是链表313
10.5.2建立简单的静态链表315
10.5.3创建动态链表316
10.5.4链表中结点的删除325
10.5.5链表中结点的插入329
10.5.6有序链表的创建333
习题10336
第11章文件的输入输出/337
11.1文件的基本知识337
11.1.1文件概述337
11.1.2文件名338
11.1.3文件的分类339
11.1.4文件缓冲区340
11.1.5文件类型指针340
11.2文件的打开与关闭341
11.2.1用fopen()函数打开数据文件342
11.2.2用fclose()函数关闭数据文件344
11.3顺序读写数据文件345
11.3.1读写字符345
11.3.2读写字符串349
11.3.3用格式化的方式读写文本文件352
11.3.4用二进制方式读写一组数据354
11.4文件读写的出错检测360
11.5随机读写数据文件362
11.5.1文件位置标记及其定位362
11.5.2文件随机读写举例364
习题11366
附录AASCII表/367
附录B扩展的ASCII码表/371附录C运算符和结合性/372附录D库函数/374参考文献/380
