第1章 程序的概念与算法 1
1.1 程序的概念 2
1.2 算法与流程图 2
1.3 结构化程序的结构 3
1.3.1 顺序结构 4
1.3.2 分支结构 7
1.3.3 循环结构 10
练习与实践 12
第2章 C语言程序的基本构成 13
2.1 C源文件 14
2.2 C函数 17
2.3 C语句 17
2.4 保留字与标识符 18
2.4.1 保留字 18
2.4.2 标识符 18
2.5 运算符 19
2.5.1 算术运算符 19
2.5.2 关系运算符 20
2.5.3 逻辑运算符 20
2.5.4 位运算符 22
2.6 编辑C语言程序时应注意的问题 23
练习与实践 23
第3章 输入输出程序设计 28
3.1 字符串的输入与输出 29
3.1.1 字符串的输出 29
3.1.2 字符串的输入 31
3.2 整型数的输入与输出 32
3.2.1 整型数的输出 32
3.2.2 整型数的输入 33
3.3 字符的输入与输出 36
3.4 实型数的输入与输出 38
练习与实践 40
第4章 while循环程序设计 42
4.1 循环的概念 43
4.1.1 while循环 43
4.1.2 do-while循环 48
4.1.3 break语句和continue语句 50
4.2 循环嵌套的应用 55
练习与实践 57
第5章 for循环程序设计 60
5.1 for循环结构 61
5.2 循环嵌套 68
练习与实践 71
第6章 if语句的应用 74
6.1 if语句的应用 75
6.2 if-else语句的应用 78
6.3 if-else if语句的应用 82
6.4 if嵌套语句的应用 85
练习与实践 87
第7章 多分支语句的应用 89
练习与实践 101
第8章 常用数据表达 103
8.1 数组 104
8.1.1 一维数组 104
8.1.2 字符数组 107
8.1.3 二维数组 108
8.2 结构体 110
8.3 指针 116
8.3.1 一维数组指针 116
8.3.2 数组指针 119
8.3.3 指针数组 120
练习与实践 122
第9章 数组的应用 124
9.1 数组元素的查找 125
9.1.1 无序数组的查找 125
9.1.2 有序数组的查找 129
9.2 数组的排序 131
9.2.1 冒泡排序 131
9.2.2 选择排序 135
9.3 数组元素的插入 139
9.3.1 绝对位置的插入 139
9.3.2 有序数据的插入 141
9.4 数组元素的删除 144
练习与实践 146
第10章 函数及其应用 147
10.1 函数的基本概念 148
10.2 函数的参数 148
10.3 系统函数的应用 151
10.3.1 数学函数 151
10.3.2 字符串处理函数 152
10.3.3 字符操作函数与转换函数 154
10.4 自定义函数 155
10.5 函数的应用 159
10.6 函数的嵌套与递归调用 171
10.6.1 函数的嵌套调用 171
10.6.2 函数递归调用 173
练习与实践 175
第11章 结构体的应用 182
11.1 结构体的基本概念 183
11.1.1 结构体类型定义 183
11.1.2 结构体变量的定义 183
11.1.3 结构体变量占据的内存空间 184
11.1.4 结构体变量对结构体成员的引用 184
11.1.5 结构体变量的赋值 184
11.2 结构体类型的数组 187
11.3 结构体变量的输入、输出与存储 190
11.4 结构体变量的查找与删除 197
11.5 结构体变量的排序 205
练习与实践 216
第12章 链表及其应用 221
12.1 链表的定义 222
12.2 堆栈 223
12.3 队列 225
12.4 链表的插入 228
12.5 链表的删除 230
12.6 链表的应用 231
练习与实践 244
第13章 变量存储类型与多文件系统 245
13.1 变量的存储类型 246
13.2 auto存储类型的变量与作用范围 247
13.3 static存储类型的变量与作用范围 249
13.4 register存储类型的变量与作用范围 252
13.5 extern存储类型的变量与作用范围 253
13.6 多文件系统中的函数调用 255
13.7 外部变量在多文件系统中的应用 260
练习与实践 261
第14章 文件程序的设计 264
14.1 文件概述 265
14.2 文件打开与关闭函数 266
14.2.1 文件打开函数fopen 267
14.2.2 文件关闭函数fclose 267
14.3 文件中字符的读/写函数 268
14.3.1 文件中字符读函数fgetc 268
14.3.2 文件中字符写函数fputc 268
14.4 文件的格式化读/写函数 270
14.4.1 文件的格式化读函数 270
14.4.2 文件的格式化写函数 271
14.5 文件中的数据块读/写函数 273
14.5.1 数据块读函数fread 273
14.5.2 数据块写函数fwrite 273
14.6 文件位置定位函数 276
14.6.1 位置指针复位函数rewind 276
14.6.2 随机读写函数fseek 277
练习与实践 278
附录 282
附录A ASCII表 282
附录B 运算符及其优先级汇总表 283
附录C C语言的保留字 284
附录D Visual C++ 6.0上机步骤 284