第1章 C语言程序设计概述 1
1.1 C语言简介 1
1.1.1 C语言的发展历程和趋势 1
1.1.2 C语言的特点 2
1.2 最简单的C语言程序 2
1.2.1 最简单的C语言程序举例 2
1.2.2 运行C程序的方法 6
1.3 小结 9
1.4 习题 10
第2章 数据类型、运算符与表达式 12
2.1 C语言的数据类型 12
2.1.1 整型 13
2.1.2 浮点型 15
2.1.3 字符型 16
2.2 常量 20
2.3 变量 21
2.4 标识符 21
2.5 运算符与表达式 22
2.5.1 算术运算符和算术表达式 22
2.5.2 自增、自减运算符 23
2.5.3 关系运算符和关系表达式 23
2.5.4 逻辑运算符和逻辑表达式 24
2.5.5 赋值运算符和赋值表达式 25
2.5.6 条件运算符和条件表达式 26
2.5.7 逗号运算符和逗号表达式 26
2.5.8 sizeof()运算符 27
2.6 数据类型的转换 27
2.7 小结 29
2.8 习题 30
第3章 顺序结构程序设计 33
3.1 C语句 33
3.2 数据输入输出 35
3.2.1 标准格式输出函数printf() 35
3.2.2 标准格式输入函数scanf() 37
3.2.3 字符输出函数putchar() 39
3.2.4 字符输入函数getchar() 40
3.3 顺序结构程序举例 41
3.4 小结 42
3.5 习题 42
第4章 选择结构程序设计 45
4.1 用if语句实现选择结构 45
4.1.1 简单if语句 45
4.1.2 if...else语句 46
4.1.3 多分支if语句 48
4.2 switch语句 49
4.3 选择结构嵌套 53
4.4 小结 55
4.5 习题 55
第5章 循环结构程序设计 61
5.1 实现循环的语句 61
5.1.1 while语句 61
5.1.2 do...while语句 62
5.1.3 for语句 64
5.2 循环的嵌套 65
5.3 continue语句和break语句 66
5.4 循环结构程序举例 68
5.5 小结 71
5.6 习题 71
第6章 数组 76
6.1 一维数组 76
6.1.1 一维数组的定义 76
6.1.2 一维数组的引用 77
6.1.3 一维数组的初始化 78
6.1.4 一维数组的应用 79
6.2 二维数组 83
6.2.1 二维数组的定义 83
6.2.2 二维数组的引用 85
6.2.3 二维数组的初始化 85
6.2.4 二维数组的应用 86
6.3 字符数组和字符串 90
6.3.1 字符数组的定义和引用 90
6.3.2 字符串 92
6.3.3 常用的字符串函数 94
6.3.4 字符数组的应用 96
6.4 小结 98
6.5 习题 98
第7章 函数与模块化程序设计 100
7.1 函数概述 100
7.1.1 定义函数 100
7.1.2 形式参数和实际参数 101
7.2 函数嵌套调用与递归 105
7.2.1 函数的嵌套调用 105
7.2.2 函数的递归调用 109
7.3 数组作为函数参数 112
7.3.1 使用数组元素作为函数参数 112
7.3.2 使用数组名作为函数参数 113
7.4 变量的作用域和存储方式 115
7.4.1 局部变量和全局变量 115
7.4.2 变量的存储类别 117
7.5 C预处理器和库函数 121
7.5.1 宏定义#define 121
7.5.2 文件包含#include 126
7.5.3 C库函数 126
7.6 模块化程序设计概述 128
7.6.1 模块化程序设计思想 128
7.6.2 模块化程序设计原则 128
7.6.3 模块化编程步骤 128
7.7 小结 130
7.8 习题 131
第8章 指针 136
8.1 指针初探 136
8.1.1 指针变量的定义 136
8.1.2 指针的基本使用方法 137
8.1.3 指针变量作为函数参数 140
8.2 指针与一维数组 143
8.2.1 数组元素的指针 143
8.2.2 引用数组元素的指针运算 144
8.2.3 指针与一维数组 146
8.3 指针与二维数组 147
8.3.1 二维数组的地址 147
8.3.2 指向二维数组的指针 148
8.4 指针与字符串 149
8.4.1 数组名引用方式 149
8.4.2 指针引用方式 150
8.5 指向函数的指针和返回指针的函数 151
8.5.1 指向函数的指针 151
8.5.2 返回指针的函数 153
8.6 指针数组与多级指针 154
8.6.1 指针数组的定义和引用 154
8.6.2 多级指针 155
8.7 小结 156
8.8 习题 157
第9章 结构体与共用体 160
9.1 结构体——复合数据类型 160
9.1.1 定义结构体 160
9.1.2 定义结构体变量 161
9.1.3 结构体变量的初始化和引用 163
9.1.4 结构体数组 165
9.1.5 结构体和指针 166
9.1.6 结构体应用——链表操作 170
9.1.7 类型定义符typedef 172
9.2 共用体 173
9.2.1 共用体的概念 173
9.2.2 共用体变量的引用 175
9.3 枚举类型 176
9.4 小结 178
9.5 习题 178
第10章 文件操作 181
10.1 文件概述 181
10.1.1 文件 181
10.1.2 文件指针 182
10.2 文件的打开和关闭 182
10.2.1 文件的打开 182
10.2.2 文件的关闭 183
10.3 文件的格式化读写 185
10.4 文件的随机读写 192
10.5 常用文件检测函数 194
10.6 小结 195
10.7 习题 196