第1篇 C语言程序设计学习指导 1
第1章 C语言概述 1
1.1 本章要点 1
1.1.1 C语言的特点 1
1.1.2 C语言程序的结构 1
1.1.3 C语言源程序的编辑、编译、连接和运行 1
1.2 习题 2
1.3 习题参考答案 2
第2章 数据类型、运算符和表达式 3
2.1 本章要点 3
2.1.1 C语言的数据类型 3
2.1.2 标识符 3
2.1.3 常量 3
2.1.4 变量 4
2.1.5 数据类型的转换 4
2.1.6 C语言运算符的优先级和结合性 5
2.1.7 算术运算符和算术表达式 6
2.1.8 自增运算符和自减运算符 6
2.1.9 赋值运算符和赋值表达式 6
2.1.10 复合赋值运算符 6
2.1.11 逗号运算符 6
2.2 本章难点 6
2.2.1 运算符的优先级 6
2.2.2 运算符的结合性 7
2.2.3 复合赋值运算 7
2.2.4 赋值类型转换 7
2.3 例题分析 8
2.4 习题 9
2.4.1 单项选择题 9
2.4.2 填空题 12
2.4.3 阅读程序写结果题 13
2.4.4 编写程序题 15
2.5 习题参考答案 15
2.5.1 单项选择题答案 15
2.5.2 填空题答案 15
2.5.3 阅读程序写结果题答案 16
2.5.4 编写程序题参考答案 16
第3章 程序设计初步 17
3.1 本章要点 17
3.1.1 格式输入函数scanf() 17
3.1.2 格式输出函数printf() 18
3.1.3 单字符输入函数getchar() 18
3.1.4 单字符输出函数putchar() 18
3.1.5 赋值语句 19
3.1.6 复合语句和空语句 19
3.1.7 顺序结构 19
3.2 本章难点 20
3.2.1 printf()函数中的格式字符、附加格式符和转义符 20
3.2.2 scanf()函数中的格式字符和附加格式符 20
3.3 例题分析 21
3.4 习题 22
3.4.1 单项选择题 22
3.4.2 填空题 24
3.4.3 阅读程序写结果题 26
3.4.4 编写程序题 26
3.5 习题参考答案 27
3.5.1 单项选择题答案 27
3.5.2 填空题答案 27
3.5.3 阅读程序写结果题答案 28
3.5.4 编写程序题参考答案 28
第4章 选择结构程序的设计 31
4.1 本章要点 31
4.1.1 关系运算符与关系表达式 31
4.1.2 逻辑运算符与逻辑表达式 31
4.1.3 二分支选择结构——if语句 32
4.1.4 条件运算符和条件表达式 33
4.1.5 多分支选择结构——switch语句 34
4.2 本章难点 34
4.2.1 if语句的嵌套 34
4.2.2 条件表达式的使用 35
4.2.3 switch语句和break语句的使用 35
4.3 例题分析 36
4.4 习题 38
4.4.1 单项选择题 38
4.4.2 填空题 41
4.4.3 阅读程序写结果题 42
4.4.4 编写程序题 44
4.5 习题参考答案 44
4.5.1 单项选择题答案 44
4.5.2 填空题答案 45
4.5.3 阅读程序写结果题答案 45
4.5.4 编写程序题参考答案 45
第5章 循环结构程序的设计 48
5.1 本章要点 48
5.1.1 while语句构成的循环 48
5.1.2 do-while语句构成的循环 48
5.1.3 for语句构成的循环 49
5.1.4 goto语句以及goto语句构成的循环 49
5.1.5 多重循环 50
5.1.6 break语句和continue语句 50
5.2 本章难点 51
5.2.1 循环结构的理解 51
5.2.2 3种循环结构的比较 51
5.2.3 多重循环 52
5.3 例题分析 52
5.4 习题 55
5.4.1 单项选择题 55
5.4.2 填空题 57
5.4.3 阅读程序写结果题 59
5.4.4 编写程序题 63
5.5 习题参考答案 64
5.5.1 单项选择题答案 64
5.5.2 填空题答案 64
5.5.3 阅读程序写结果题答案 65
5.5.4 编写程序题参考答案 66
第6章 数组 72
6.1 本章要点 72
6.1.1 一维数组 72
6.1.2 二维数组 72
6.1.3 字符数组 73
6.2 本章难点 74
6.2.1 数组元素的下标 74
6.2.2 字符串和字符数组 74
6.2.3 字符串处理函数 75
6.3 例题分析 75
6.4 习题 78
6.4.1 单项选择题 78
6.4.2 填空题 80
6.4.3 阅读程序写结果题 82
6.4.4 编写程序题 86
6.5 习题参考答案 87
6.5.1 单项选择题答案 87
6.5.2 填空题答案 87
6.5.3 阅读程序写结果题答案 87
6.5.4 编写程序题参考答案 88
第7章 函数 95
7.1 本章要点 95
7.1.1 函数的定义 95
7.1.2 函数的参数和返回值 96
7.1.3 函数调用 96
7.1.4 函数声明 97
7.1.5 数组名作为函数参数 97
7.1.6 全局变量和局部变量 97
7.1.7 变量的存储类别 97
7.1.8 内部函数与外部函数 98
7.2 本章难点 98
7.2.1 参数的传递 98
7.2.2 函数的声明 98
7.2.3 函数的递归调用 98
7.2.4 数组名作为函数参数 99
7.2.5 变量的作用范围 99
7.2.6 静态存储类别 99
7.3 例题分析 99
7.4 习题 101
7.4.1 单项选择题 101
7.4.2 填空题 103
7.4.3 阅读程序写结果题 106
7.4.4 编写程序题 108
7.5 习题参考答案 109
7.5.1 单项选择题答案 109
7.5.2 填空题答案 109
7.5.3 阅读程序写结果题答案 110
7.5.4 编写程序题参考答案 110
第8章 预处理命令 113
8.1 本章要点 113
8.1.1 不带参数的宏 113
8.1.2 带参数的宏 113
8.1.3 文件包含 114
8.1.4 条件编译 114
8.2 本章难点 115
8.2.1 宏展开 115
8.2.2 条件编译 115
8.3 例题分析 115
8.4 习题 116
8.4.1 单项选择题 116
8.4.2 填空题 119
8.4.3 阅读程序写结果题 120
8.4.4 编写程序题 121
8.5 习题参考答案 121
8.5.1 单项选择题答案 121
8.5.2 填空题答案 121
8.5.3 阅读程序写结果题答案 122
8.5.4 编写程序题参考答案 122
第9章 指针 124
9.1 本章要点 124
9.1.1 指针变量的定义 124
9.1.2 指针变量的赋值 124
9.1.3 对指针变量的操作 125
9.1.4 指向指针变量的指针变量 126
9.1.5 数组与指针 126
9.1.6 指针数组 127
9.1.7 指向函数的指针变量 127
9.1.8 带参数的main()函数 127
9.1.9 void类型的指针 128
9.2 本章难点 128
9.2.1 指针变量的概念 128
9.2.2 对指针变量的操作 129
9.2.3 字符指针变量与字符数组的区别 130
9.3 例题分析 130
9.4 习题 136
9.4.1 单项选择题 136
9.4.2 填空题 140
9.4.3 阅读程序写结果题 141
9.4.4 编写程序题(要求使用指针) 144
9.5 习题参考答案 144
9.5.1 单项选择题答案 144
9.5.2 填空题答案 145
9.5.3 阅读程序写结果题答案 145
9.5.4 编写程序题参考答案 145
第10章 结构体与其他数据类型 150
10.1 本章要点 150
10.1.1 结构体概述 150
10.1.2 定义结构体类型变量的方法 150
10.1.3 结构体变量的引用和初始化 150
10.1.4 结构体数组 151
10.1.5 指向结构体数据的指针 151
10.1.6 用指针处理链表 152
10.1.7 共用体 153
10.1.8 枚举类型 153
10.1.9 用typedef定义类型 154
10.2 本章难点 154
10.2.1 在函数之间传递结构体数据 154
10.2.2 结构体与共用体的区别 154
10.2.3 链表操作 155
10.3 例题分析 155
10.4 习题 159
10.4.1 单项选择题 159
10.4.2 填空题 162
10.4.3 阅读程序写结果题 166
10.4.4 编写程序题 170
10.5 习题参考答案 171
10.5.1 单项选择题答案 171
10.5.2 填空题答案 171
10.5.3 阅读程序写结果题答案 172
10.5.4 编写程序题参考答案 173
第11章 位运算 179
11.1 本章要点 179
11.1.1 位运算符和位运算 179
11.1.2 位运算的优先级 180
11.1.3 位段 181
11.2 例题分析 181
11.3 习题 183
11.3.1 单项选择题 183
11.3.2 填空题 183
11.3.3 阅读程序写结果题 184
11.3.4 编写程序题 185
11.4 习题参考答案 185
11.4.1 单项选择题答案 185
11.4.2 填空题答案 186
11.4.3 阅读程序写结果题答案 186
11.4.4 编写程序题参考答案 186
第12章 文件 188
12.1 本章要点 188
12.1.1 文件概述 188
12.1.2 文件类型指针 188
12.1.3 文件的打开和关闭 188
12.1.4 文件的读/写 190
12.1.5 文件定位 191
12.1.6 文件检测 192
12.2 本章难点 192
12.2.1 文件位置指针的合理定位 192
12.2.2 各文件读/写函数的区别 193
12.3 例题分析 193
12.4 习题 197
12.4.1 单项选择题 197
12.4.2 填空题 199
12.4.3 阅读程序写结果题 201
12.4.4 编写程序题 202
12.5 习题参考答案 203
12.5.1 单项选择题答案 203
12.5.2 填空题答案 203
12.5.3 阅读程序写结果题答案 203
12.5.4 编写程序题参考答案 203
第2篇 C语言程序设计实验教程 208
实验一 熟悉C-Free的运行环境和开发C程序的步骤 208
实验二 数据类型、运算符、表达式 215
实验三 简单C程序设计 219
实验四 选择结构程序设计 222
实验五 循环结构程序设计 226
实验六 数组的应用(一)——数值数据的数组 229
实验七 数组的应用(二)——字符数据的数组 232
实验八 函数 235
实验九 指针 238
实验十 结构体与共用体 241
实验十一 文件 244