C语言程序设计 / “十四五”普通高等院校新形态一体化系列教材
定价:¥59.80
作者: 季春颖,李林
出版时间:2025-07
最新印次日期:2025-7
出版社:中国铁道出版社
- 中国铁道出版社
- 9787113319021
- 1-1
- 572143
- 61265482-2
- 16开
- 2025-07
- 工学
- 计算机类
- 电子与信息大类
- 计算机类
- 计算机类
- 高职
作者简介
内容简介
本书作为程序设计课程的教材,在内容上由浅入深,循序渐进,在结构上注重知识体系的系统性、连贯性及完整性,帮助读者更加轻松地掌握C语言的编程。全书共分11章:第1章主要介绍C语言的开发环境,使读者从感知上认识C语言的基本结构,第2章详细讲解C语言的基础知识,第3、4章介绍了C语言的两种结构设计,第5~10章介绍了数组、函数、指针、结构体、文件、编译预处理等,第11章介绍了位运算。
本书体系合理、概念清晰、讲解详细,适合作为高等学校的专业教材,也适合读者自学,同时还可以作为全国计算机等级考试的教材和参考书。
本书体系合理、概念清晰、讲解详细,适合作为高等学校的专业教材,也适合读者自学,同时还可以作为全国计算机等级考试的教材和参考书。
目录
第1章C语言程序设计概述1
1.1计算机程序设计的基本概念1
1.1.1计算机系统的基本组成1
1.1.2程序的概念2
1.1.3结构化程序设计3
1.2程序设计语言5
1.2.1程序设计语言发展历程5
1.2.2高级语言的发展历程5
1.2.3C语言的发展历程6
1.2.4C语言的主要特点7
1.3C语言程序的基本组成8
1.4C语言的开发流程和开发工具9
1.4.1C语言的开发流程9
1.4.2C语言的开发工具10
小结12
习题12
第2章C语言程序设计基础14
2.1数据与进制14
2.1.1数据表示的常用进制14
2.1.2进制转换15
2.1.3原码、反码和补码17
2.2数据类型19
2.2.1数据类型的意义19
2.2.2C语言数据类型分类19
2.3标识符、常量与变量21
2.3.1标识符21
2.3.2常量22
2.3.3变量定义与赋值25
2.4数据类型转换26
2.4.1隐式转换26
2.4.2显式转换27
2.5运算符与表达式27
2.5.1算术运算符与算术表达式27
2.5.2赋值运算符与赋值表达式29
2.5.3逗号运算符与逗号表达式31
2.6数据的输入/输出32
2.6.1格式化输入函数32
2.6.2格式化输出函数33
2.6.3输入/输出复杂格式控制34
2.6.4字符输入函数36
2.6.5字符输出函数36
2.7程序举例37
小结39
习题40
第3章选择结构程序设计42
3.1程序的基本结构42
3.2顺序结构程序设计44
3.2.1赋值语句44
3.2.2顺序结构程序44
3.3运算符与表达式45II
C语言程序设计
3.3.1关系运算符与关系表达式45
3.3.2逻辑运算符与逻辑表达式46
3.3.3条件运算符与条件表达式48
3.4if选择结构语句49
3.4.1单分支if语句49
3.4.2双分支if...else句51
3.4.3多分支if...elseif...else语句53
3.4.4if...else嵌套语句55
3.5switch选择结构语句57
3.6程序举例59
小结63
习题63
第4章循环结构程序设计67
4.1while循环语句67
4.2do...while循环语句69
4.3for循环语句71
4.4嵌套循环语句74
4.5循环控制语句76
4.5.1continue语句76
4.5.2break语句78
4.5.3continue语句与break语句的区别79
4.6程序举例79
小结84
习题84
第5章数组88
5.1数组的基本概念88
5.2一维数组89
5.2.1一维数组的定义89
5.2.2一维数组元素的引用91
5.2.3一维数组的初始化92
5.3二维数组94
5.3.1二维数组的定义94
5.3.2二维数组元素的引用95
5.3.3二维数组的初始化96
5.4多维数组的定义97
5.5字符数组98
5.5.1字符数组的定义98
5.5.2字符数组的初始化98
5.5.3字符串的输入和输出100
5.6常用的字符串处理函数101
5.7程序举例104
小结109
习题110
第6章函数115
6.1概述115
6.1.1函数的分类115
6.1.2函数的定义117
6.1.3函数与程序模块119
6.2函数调用及参数传递121
6.2.1函数调用121
6.2.2参数的传递122
6.2.3函数的返回值123
6.2.4函数声明124
6.3函数的嵌套调用与递归调用125
6.3.1函数的嵌套调用125
6.3.2函数的递归调用126
6.4数组作为函数参数127
6.5局部变量与全局变量129
6.5.1局部变量130
6.5.2全局变量131
6.6变量的存储类别133
6.6.1变量的静态存储与动态存储133
6.6.2auto变量133
6.6.3static变量134
6.6.4register变量135
6.6.5extern变量136
6.7内部函数和外部函数137
6.8程序举例139
小结142
习题143
第7章指针146
7.1指针与指针变量146
7.1.1地址和指针146
7.1.2直接访问和间接访问147
7.1.3指针变量147
7.1.4指针变量作为函数参数148
7.2指针变量与数组151
7.2.1指向一维数组的指针151
7.2.2用数组名作函数参数152
7.2.3指向二维数组的指针154
7.3指针数组156
7.4指针变量与字符串159
7.4.1字符串的引用159
7.4.2字符指针变量作函数形参160
7.4.3使用字符指针变量和字符数组的
比较161
7.5指针与函数161
7.5.1指向函数的指针161
7.5.2返回指针值的函数165
7.6程序举例167
小结173
习题173
第8章结构体178
8.1结构体类型的定义与结构体变量178
8.1.1结构体类型的定义178
8.1.2结构体变量的定义181
8.1.3结构体变量的赋值183
8.1.4结构体变量的引用184
8.1.5用typedef定义类型186
8.2结构体数组189
8.2.1结构体数组的定义189
8.2.2结构体数组的初始化和引用189
8.3结构体指针192
8.3.1结构体指针变量的定义和引用192
8.3.2指向结构体数组的指针变量193
8.4链表195
8.4.1链表的概念195
8.4.2创建静态链表196
8.4.3创建动态链表198
8.5共用体类型205
8.5.1创建共用体类型205
8.5.2引用共用体变量206
8.6枚举208
8.6.1枚举类型的定义208
8.6.2枚举变量的使用209
8.7程序举例210
小结217
习题217
第9章文件操作223
9.1概述223
9.1.1文件及分类223
9.1.2文件操作过程225
9.1.3文件缓冲区225IV
C语言程序设计
9.1.4文件类型指针226
9.2打开和关闭文件226
9.2.1打开文件227
9.2.2关闭文件228
9.3顺序读写文件229
9.3.1文件位置指针229
9.3.2判断文件结束函数230
9.3.3文件读写函数230
9.4随机读写文件238
9.4.1rewind()函数238
9.4.2fseek()函数238
9.4.3ftell()函数239
9.5文件出错处理241
9.5.1ferror()函数241
9.5.2clearerr()函数241
9.6程序举例242
小结244
习题245
第10章编译预处理249
10.1宏定义249
10.1.1不带参数的宏定义249
10.1.2带参数的宏定义251
10.2#include命令253
10.3程序举例255
小结256
习题257
第11章位运算260
11.1逻辑位运算符260
11.2移位运算符263
小结265
习题265
附录268
参考文献274
1.1计算机程序设计的基本概念1
1.1.1计算机系统的基本组成1
1.1.2程序的概念2
1.1.3结构化程序设计3
1.2程序设计语言5
1.2.1程序设计语言发展历程5
1.2.2高级语言的发展历程5
1.2.3C语言的发展历程6
1.2.4C语言的主要特点7
1.3C语言程序的基本组成8
1.4C语言的开发流程和开发工具9
1.4.1C语言的开发流程9
1.4.2C语言的开发工具10
小结12
习题12
第2章C语言程序设计基础14
2.1数据与进制14
2.1.1数据表示的常用进制14
2.1.2进制转换15
2.1.3原码、反码和补码17
2.2数据类型19
2.2.1数据类型的意义19
2.2.2C语言数据类型分类19
2.3标识符、常量与变量21
2.3.1标识符21
2.3.2常量22
2.3.3变量定义与赋值25
2.4数据类型转换26
2.4.1隐式转换26
2.4.2显式转换27
2.5运算符与表达式27
2.5.1算术运算符与算术表达式27
2.5.2赋值运算符与赋值表达式29
2.5.3逗号运算符与逗号表达式31
2.6数据的输入/输出32
2.6.1格式化输入函数32
2.6.2格式化输出函数33
2.6.3输入/输出复杂格式控制34
2.6.4字符输入函数36
2.6.5字符输出函数36
2.7程序举例37
小结39
习题40
第3章选择结构程序设计42
3.1程序的基本结构42
3.2顺序结构程序设计44
3.2.1赋值语句44
3.2.2顺序结构程序44
3.3运算符与表达式45II
C语言程序设计
3.3.1关系运算符与关系表达式45
3.3.2逻辑运算符与逻辑表达式46
3.3.3条件运算符与条件表达式48
3.4if选择结构语句49
3.4.1单分支if语句49
3.4.2双分支if...else句51
3.4.3多分支if...elseif...else语句53
3.4.4if...else嵌套语句55
3.5switch选择结构语句57
3.6程序举例59
小结63
习题63
第4章循环结构程序设计67
4.1while循环语句67
4.2do...while循环语句69
4.3for循环语句71
4.4嵌套循环语句74
4.5循环控制语句76
4.5.1continue语句76
4.5.2break语句78
4.5.3continue语句与break语句的区别79
4.6程序举例79
小结84
习题84
第5章数组88
5.1数组的基本概念88
5.2一维数组89
5.2.1一维数组的定义89
5.2.2一维数组元素的引用91
5.2.3一维数组的初始化92
5.3二维数组94
5.3.1二维数组的定义94
5.3.2二维数组元素的引用95
5.3.3二维数组的初始化96
5.4多维数组的定义97
5.5字符数组98
5.5.1字符数组的定义98
5.5.2字符数组的初始化98
5.5.3字符串的输入和输出100
5.6常用的字符串处理函数101
5.7程序举例104
小结109
习题110
第6章函数115
6.1概述115
6.1.1函数的分类115
6.1.2函数的定义117
6.1.3函数与程序模块119
6.2函数调用及参数传递121
6.2.1函数调用121
6.2.2参数的传递122
6.2.3函数的返回值123
6.2.4函数声明124
6.3函数的嵌套调用与递归调用125
6.3.1函数的嵌套调用125
6.3.2函数的递归调用126
6.4数组作为函数参数127
6.5局部变量与全局变量129
6.5.1局部变量130
6.5.2全局变量131
6.6变量的存储类别133
6.6.1变量的静态存储与动态存储133
6.6.2auto变量133
6.6.3static变量134
6.6.4register变量135
6.6.5extern变量136
6.7内部函数和外部函数137
6.8程序举例139
小结142
习题143
第7章指针146
7.1指针与指针变量146
7.1.1地址和指针146
7.1.2直接访问和间接访问147
7.1.3指针变量147
7.1.4指针变量作为函数参数148
7.2指针变量与数组151
7.2.1指向一维数组的指针151
7.2.2用数组名作函数参数152
7.2.3指向二维数组的指针154
7.3指针数组156
7.4指针变量与字符串159
7.4.1字符串的引用159
7.4.2字符指针变量作函数形参160
7.4.3使用字符指针变量和字符数组的
比较161
7.5指针与函数161
7.5.1指向函数的指针161
7.5.2返回指针值的函数165
7.6程序举例167
小结173
习题173
第8章结构体178
8.1结构体类型的定义与结构体变量178
8.1.1结构体类型的定义178
8.1.2结构体变量的定义181
8.1.3结构体变量的赋值183
8.1.4结构体变量的引用184
8.1.5用typedef定义类型186
8.2结构体数组189
8.2.1结构体数组的定义189
8.2.2结构体数组的初始化和引用189
8.3结构体指针192
8.3.1结构体指针变量的定义和引用192
8.3.2指向结构体数组的指针变量193
8.4链表195
8.4.1链表的概念195
8.4.2创建静态链表196
8.4.3创建动态链表198
8.5共用体类型205
8.5.1创建共用体类型205
8.5.2引用共用体变量206
8.6枚举208
8.6.1枚举类型的定义208
8.6.2枚举变量的使用209
8.7程序举例210
小结217
习题217
第9章文件操作223
9.1概述223
9.1.1文件及分类223
9.1.2文件操作过程225
9.1.3文件缓冲区225IV
C语言程序设计
9.1.4文件类型指针226
9.2打开和关闭文件226
9.2.1打开文件227
9.2.2关闭文件228
9.3顺序读写文件229
9.3.1文件位置指针229
9.3.2判断文件结束函数230
9.3.3文件读写函数230
9.4随机读写文件238
9.4.1rewind()函数238
9.4.2fseek()函数238
9.4.3ftell()函数239
9.5文件出错处理241
9.5.1ferror()函数241
9.5.2clearerr()函数241
9.6程序举例242
小结244
习题245
第10章编译预处理249
10.1宏定义249
10.1.1不带参数的宏定义249
10.1.2带参数的宏定义251
10.2#include命令253
10.3程序举例255
小结256
习题257
第11章位运算260
11.1逻辑位运算符260
11.2移位运算符263
小结265
习题265
附录268
参考文献274













