目录
*1章C语言与程序设计1
1.1C语言发展简史2
1.2C语言的特点3
1.3计算机解题过程4
1.4算法及其表示5
1.4.1算法的概念7
1.4.2算法的描述8
1.5常用算法策略介绍11
1.5.1穷举法11
1.5.2递推法12
1.5.3递归法12
1.6结构化程序设计方法13
1.6.1结构化程序设计基本思想13
1.6.2三种基本程序结构14
本章小结14
习题一15
*2章C语言基础知识16
2.1简单的C语言程序16
2.2关键字和标识符19
2.2.1字符集19
2.2.2关键字19
2.2.3标识符20
2.3数据类型20
2.3.1C语言的数据类型21
2.3.2整数类型22
2.3.3浮点类型23
2.3.4字符类型24
2.4常量和变量25
2.4.1常量25
2.4.2变量27
2.5运算符和表达式29
2.5.1算术运算符30
2.5.2赋值运算符32
2.5.3**运算符34
2.5.4运算符的优先级和结合*36
2.6数据类型转换37
本章小结39
习题二39
*3章程序控制结构42
3.1C语言语句概述42
3.2顺序结构44
3.2.1赋值语句44
3.2.2数据输入/输出44
3.2.3格式输入/输出46
3.2.4程序举例51
3.3*择结构52
3.3.1关系运算符与关系表达式53
3.3.2逻辑运算符与逻辑表达式53
3.3.3if语句55
3.3.4switch语句59
3.3.5程序举例62
3.4循环结构64
3.4.1while循环语句64
3.4.2do-while循环语句66
3.4.3for循环语句67
3.4.4循环的嵌套70
3.4.5goto、break和continue语句71
3.4.6程序举例74
本章小结79
习题三80
*4章数组和字符串94
4.1一维数组94
4.1.1一维数组的定义94
4.1.2一维数组的初始化95
4.1.3一维数组元素的引用96
4.1.4一维数组应用举例98
4.2二维数组及多维数组103
4.2.1二维数组的定义103
4.2.2二维数组的初始化104
4.2.3二维数组元素的引用104
4.2.4二维数组应用举例105
4.2.5多维数组106
4.3字符数组和字符串107
4.3.1用字符数组存放字符序列107
4.3.2用字符数组存放字符串108
4.3.3字符串处理函数110
4.3.4字符数组应用举例113
本章小结116
*题*117
*5章指针123
5.1指针的概念及运算123
5.1.1指针的概念123
5.1.2指针变量的定义和初始化124
5.1.3与指针有关的运算125
5.2数组中的指针128
5.2.1一维数组中的指针128
5.2.2二维数组中的指针131
5.3用指针处理字符串133
5.4指针数组和指针的指针135
5.4.1指针数组135
5.4.2指向指针的指针137
5.5程序举例139
本章小结140
习题五141
*6章函数145
6.1模块化程序设计方法145
6.2函数的定义、调用和声明147
6.2.1函数定义147
6.2.2函数调用150
6.2.3函数声明151
6.3函数参数及其传递方式153
6.3.1函数的参数153
6.3.2函数参数的传递方式155
6.4函数的嵌套调用和递归调用161
6.4.1函数的嵌套调用161
6.4.2函数的递归调用164
6.5函数指针和指向函数的指针变量167
6.5.1函数指针和指向函数的指针变量的定义167
6.5.2指向函数的指针作为函数的参数168
6.6main()函数的参数170
6.7exit()函数172
6.8变量的作用域规则与存储类别172
6.8.1局部变量和全局变量173
6.8.2变量的存储类别176
6.8.3内部函数和外部函数181
6.9程序举例183
本章小结186
习题六187
*7章用户自定义类型193
7.1结构体193
7.1.1结构体类型定义193
7.1.2结构体类型变量、数组和指针的定义195
7.1.3结构体类型变量、数组和指针的初始化197
7.1.4结构体类型变量的引用198
7.1.5结构体应用举例200
7.1.6结构体指针与函数204
7.1.7位域206
7.2动态存储分配207
7.2.1内存的分配与释放208
7.2.2内存动态分配应用举例210
7.3共用体216
7.3.1共用体类型的定义217
7.3.2共用体变量定义217
7.4枚举类型219
7.4.1枚举类型的定义219
7.4.2枚举类型数据的使用220
7.5类型标识符的定义221
本章小结221
习题七222
*8章文件225
8.1文件概述225
8.1.1文件的基本概念225
8.1.2文件类型和常用函数226
8.1.3文件类型指针227
8.2文件的打开与关闭228
8.2.1文件的打开228
8.2.2文件的关闭229
8.3文件的读/写229
8.3.1顺序文件的读/写230
8.3.2随机文件的读/写236
8.4程序举例239
本章小结242
习题八243
*9章编译预处理245
9.1宏定义245
9.1.1不带参数的宏定义246
9.1.2带参数的宏定义248
9.2文件包含251
9.3条件编译253
本章小结255
习题九256
*10章上机实验258
实验一C语言程序的运行环境和运行过程259
实验二简单程序设计263
实验三分支结构和循环结构程序设计(1)263
实验*分支结构和循环结构程序设计(2)264
实验五数组应用和字符串处理程序设计265
实验六指针应用程序设计266
实验七模块化程序设计266
实验八结构体应用和文件操作程序设计267
附录AASCII码字符表269
附录BC语言运算符270
附录C位运算271
附录D常用的C库函数273
附录E实验报告279
附录FVisualC 常见错误280
参考文献284