本书是“C语言程序设计”的入门教材,其目的是培养学生基本的程序设计能力。全书遵循ANSI/ISO C的标准,由具有多年教学经验和实际项目开发经验的教师用通俗易懂的语言编写而成。书中系统地介绍C语言程序设计所需要的基础知识及所用的开发环境; C语言中支持结构化程序设计的3种结构——顺序结构、选择结构和循环结构所需要的工具;C语言的一些高级工具,如数组、指针、结构体、共用体、文件等。本书可作为高职高专院校计算机专业的教材,也可作为广大C语言爱好者的参考用书。
方灵,江西现代职业技术学院教师,近五年来一直从事《程序设计基础》课程的教学工作,多次指导学生参加省级技能竞赛,获"优秀指导教师”称号。
目 录
第1章 C语言概述 1
1.1 C语言的发展史 1
1.2 C语言的特点 3
1.3 算法 3
1.4 一个简单的C语言 7
1.5 C语言程序的开发环境 9
习题1 11
第2章 数据类型、运算法、表达式 13
2.1 数据类型 13
2.1.1 标识符 13
2.1.2 关键字 14
2.2 常量和变量 14
2.2.1 常量 14
2.2.2 变量 15
2.3 基本数据类型 17
2.3.1 整型数据 17
2.3.2 实型数据 19
2.3.3 字符型数据 20
2.4 运算符与表达式 22
2.4.1 C运算符 23
2.4.2 基本算术运算符 23
2.4.3 自增自减运算符 24
2.4.4 算术表达式 25
2.4.5 赋值运算符和表达式 26
2.5 强制类型转换运算符 27
2.6 逗号运算符和逗号表达式 28
习题2 29
第3章 顺序结构 31
3.1 C语句概述 31
3.2 输入输出函数 33
3.2.1 格式化输出函数 33
3.2.2 格式化输入函数 38
3.2.3 字符输入输出函数 42
3.3 顺序结构程序设计举例 42
习题3 43
第4章 选择结构 47
4.1 if语句 47
4.1.1 关系运算符和逻辑运算符 47
4.1.2 简单if语句格式 49
4.1.3 if…else格式 50
4.1.4 if…else…if格式 51
4.2 if语句的嵌套 52
4.3 条件运算符与条件表达式 53
4.4 switch语句 54
4.5 选择结构程序设计举例 56
习题4 59
第5章 循环结构 62
5.1 while语句 62
5.2 do…while语句 65
5.3 for语句 68
5.4 3种循环语句的比较 71
5.5 循环的嵌套 72
5.6 循环体中的控制命令 76
5.7 循环结构程序设计举例 79
习题5 83
第6章 数组 89
6.1 初识数组 89
6.2 一维数组 90
6.2.1 一维数组的定义与初始化 90
6.2.2 一维数组的引用 92
6.2.3 一维数组示例 94
6.3 二维数组及多维数组 97
6.3.1 二维数组的定义与初始化 97
6.3.2 二维数组的引用 99
6.3.3 二维数组示例 100
6.3.4 多维数组 104
6.4 字符数组与字符串 105
6.4.1 字符数组的定义与初始化 105
6.4.2 字符数组的引用 106
6.4.3 字符串 107
6.4.4 字符串的输入输出 108
6.4.5 常用的字符串处理函数 111
习题6 116
第7章 函数 119
7.1 函数的定义 119
7.1.1 无参函数的定义 119
7.1.2 空函数 122
7.1.3 有参函数的定义 122
7.2 函数的调用 122
7.2.1 函数调用的一般方法 122
7.2.2 函数的声明 123
7.2.3 函数的参数与返回值 123
7.3 函数的嵌套调用 125
7.3.1 数组名作为函数参数 125
7.3.2 嵌套调用函数 125
7.4 函数的递归调用 127
7.5 局部变量和全局变量 129
7.6 应用程序举例 135
习题7 137
第8章 指针 140
8.1 地址 140
8.2 指针变量 141
8.2.1 声明指针变量 142
8.2.2 指针变量的赋值 142
8.2.3 有关指针的运算符 143
8.2.4 指针操作 144
8.3 数组与指针 146
8.3.1 通过指针操作一维数组 147
8.3.2 通过指针操作二维数组 153
8.3.3 通过指针操作字符串 157
8.4 指针与函数 158
8.4.1 指针变量作为函数参数 158
8.4.2 返回指针值的函数 166
习题8 168
第9章 结构体和共用体 172
9.1 结构体 172
9.1.1 结构体类型的定义 172
9.1.2 结构体变量的定义 173
9.1.3 结构体变量的初始化 176
9.1.4 结构体变量的引用 177
9.1.5 结构体变量的内存分配 179
9.2 结构体数组 181
9.2.1 结构体数组的定义 181
9.2.2 结构体数组的初始化 182
9.2.3 结构体数组的引用 183
9.3 结构体指针 185
9.3.1 指向结构体变量的指针 185
9.3.2 指向结构体数组的指针 187
9.4 结构体作为函数参数 188
9.5 共用体 190
9.5.1 共用体类型的定义 190
9.5.2 共用体变量的定义 191
9.5.3 共用体变量的初始化 192
9.5.4 共用体变量的引用 193
9.6 枚举类型 195
9.7 使用typedef声明新类型名 198
习题9 198
第10章 文件 202
10.1 初识文件 202
10.1.1 文件的概念 202
10.1.2 文件的分类 203
10.1.3 文件的缓冲机制 204
10.1.4 文件指针 205
10.2 文件的打开与关闭 206
10.2.1 使用fopen函数打开数据文件 206
10.2.2 使用fclose函数关闭数据文件 209
10.3 文件的顺序读写 210
10.3.1 字符读写函数 210
10.3.2 字符串读写函数 212
10.3.3 数据块读写函数 214
10.3.4 格式化读写函数 216
10.4 文件的随机读写 218
10.4.1 fseek函数 219
10.4.2 rewind函数 220
10.4.3 ftell函数 222
习题10 222