第一部分 基础篇 1
案例1:一个简单的学习机 1
第1章C程序结构及C程序调试 5
1.1 C程序结构 5
1.2 C程序调试 6
1.3习题与实训 10
第2章 数据与运算 13
2.1变量定义 13
2.1.1数据类型 13
2.1.2常量 14
2.1.3变量 15
2.2数据运算 18
2.2.1算术运算 18
2.2.2赋值运算 20
2.2.3逗号运算 21
2.3习题与实训 22
第3章 顺序结构程序设计 27
3.1数据输入 27
3.1.1赋值语句 28
3.1.2字符数据输入函数 28
3.1.3格式化输入函数 28
3.2数据输出 30
3.2.1字符数据输出函数 30
3.2.2格式化输出函数 31
3.3注释 32
3.4应用举例 33
3.5习题与实训 35
第4章 选择结构程序设计 42
4.1描述判断条件 42
4.1.1关系表达式 42
4.1.2逻辑表达式 43
4.2简单选择结构流程控制 44
4.2.1简单if语句 45
4.2.2复合语句 46
4.2.3空语句 46
4.2.4条件表达式 47
4.3复杂选择结构流程控制 47
4.3.1嵌套if语句 48
4.3.2 switch语句 48
4.4应用举例 50
4.5习题与实训 53
第5章 循环结构程序设计 62
5.1循环结构流程控制语句 62
5.1.1 while语句 63
5.1.2 do…while语句 64
5.1.3 for语句 65
5.2多重循环结构 67
5.3循环结构中的跳转语句 69
5.3.1 break语句 70
5.3.2 continue语句 71
5.4应用举例 71
5.5习题与实训 78
第6章 函数 87
6.1函数的定义和调用 87
6.1.1函数定义 88
6.1.2函数调用 90
6.1.3函数声明 94
6.2变量的作用域及生存期 96
6.2.1局部变量与全局变量 96
6.2.2动态变量与静态变量 98
6.3习题与实训 103
第二部分 提高篇 113
案例2:班级成绩管理系统 113
第7章 数组 119
7.1一维数组 119
7.1.1一维数组的定义与引用 120
7.1.2一维数组初始化 121
7.1.3应用举例 121
7.2二维数组 125
7.2.1二维数组的定义与引用 125
7.2.2二维数组初始化 126
7.2.3应用举例 127
7.3字符数组 130
7.3.1字符数组的定义、引用与初始化 131
7.3.2字符串与字符数组 132
7.3.3字符串函数 133
7.3.4应用举例 136
7.4习题与实训 137
第8章 指针 144
8.1指针的概念及基本运算 144
8.1.1指针的概念 144
8.1.2指针变量 145
8.1.3指针变量的运算 146
8.2指针与数组 149
8.2.1指针与一维数组 150
8.2.2指针与二维数组 155
8.2.3指针与字符串 160
8.2.4指针数组 163
8.3指针与函数 166
8.3.1指针作函数参数 166
8.3.2指针函数 170
8.3.3函数指针 171
8.4指向指针的指针与命令行参数 172
8.4.1指向指针的指针 172
8.4.2命令行参数 174
8.5习题与实训 176
第9章 结构体与共用体 185
9.1结构体 185
9.1.1结构体的基本操作 185
9.1.2结构体数组 190
9.1.3结构体指针 193
9.1.4结构体与函数 195
9.2链表 197
9.2.1动态分配函数 199
9.2.2链表节点类型的定义 200
9.2.3建立链表 201
9.2.4链表的基本操作 202
9.3共用体 207
9.3.1共用体类型的定义 207
9.3.2共用体变量的定义 208
9.3.3共用体变量的引用 209
9.4枚举 210
9.4.1枚举类型的定义 210
9.4.2枚举变量的定义 211
9.4.3枚举变量的应用 212
9.4.4自定义类型 214
9.5习题与实训 215
第10章 编译预处理与位运算 230
10.1编译预处理 230
10.1.1文件包含 230
10.1.2宏定义 230
10.2位运算 233
10.3习题与实训 235
第11章 文件 241
11.1文件的基本概念 242
11.2文件的基本操作 243
11.2.1定义文件指针 243
11.2.2打开文件与关闭文件 244
11.2.3读写文件 245
11.2.4定位文件 251
11.2.5检测文件是否结束 253
11.3习题与实训 253
附录 261
参考文献 268