C语言程序设计 / 十三五普通高等教育规划教材
¥39.00定价
作者: 贾宗璞、许合利
出版时间:2017年1月
出版社:中国铁道出版社
- 中国铁道出版社
- 9787113193454
- 1版
- 167306
- 67188459-1
- 16开
- 2017年1月
- 477
- 316
- 工学
- 软件工程
- TP312C
- 理工类
- 本专科
内容简介
本书以Visual Studio 2013为程序设计系统, 全面细致地介绍了C#可视化面向对象编程的概念和方法。本书以Windows应用程序为主线,以学以致用为主导,充分考虑了学习的趣味性、难度的分散性,以分阶段、划任务的项目教学方法加强知识点的掌握,力求使读者通过本书的学习,能较快地具备开发应用程序的基本能力,为进一步深入学习编程打下良好的基础。 本书共分 10 章,主要内容包括:C#程序设计概述、C#语言基础、面向对象程序设计、开发Windows 窗体应用程序、文件操作、图形图像编程、键盘和鼠标事件、创建数据库应用程序、使用三层架构实现客户管理、数据库应用案例——图书管理系统等。 本书适合作为高等职业学校Visual C#课程的教材,还可作为Visual C#技术培训、Visual C#入门和应用程序开发的参考用书。
目录
第1章 C语言概述.................................1
1.1 C语言的发展及特点....................1
1.1.1 C语言的发展
......................1
1.1.2 C语言的特点
......................2
1.2 C语言程序的基本结构................3
1.3 算法及其描述
..............................5
1.3.1 算法的概念
.........................5
1.3.2 算法的描述方法
.................7
1.4 程序设计方法
............................11
1.4.1 程序设计的一般步骤 .......11
1.4.2 结构化程序设计方法 .......12
小结 .....................................................13
习题 .....................................................14
第2章
基本数据类型、运算符与
表达式 .....................................15
2.1 C语言的数据类型......................15
2.2 常量和变量
................................16
2.2.1 常量
...................................16
2.2.2 变量
...................................18
2.3 整型数据
....................................18
2.3.1 整型常量的表示
...............18
2.3.2 整型变量
...........................18
2.3.3 整型常量的类型
...............20
2.4 实型数据
....................................21
2.4.1 实型常量的表示
...............21
2.4.2 实型变量
...........................21
2.4.3 实型常量的类型
...............22
2.5 字符型数据
................................23
2.5.1 字符型常量
.......................23
2.5.2 字符变量
...........................25
2.6 算术运算符与算术表达式
........25
2.6.1 基本算术运算符
...............25
2.6.2 算术表达式及算术运算符的
优先级和结合性 ...............26
2.6.3 自增、自减运算符
...........27
2.7 赋值运算符与赋值表达式
........28
2.7.1 赋值运算符
.......................28
2.7.2 复合赋值运算符
...............28
2.7.3 赋值表达式
.......................29
2.8 逗号运算符与逗号表达式
........29
2.9 位运算符
....................................29
2.9.1 位运算符
...........................29
2.9.2 位运算复合赋值运算符 ...31
2.10 数据类型转换与计算类型长度运算符......................................31
2.10.1 自动类型转换
.................32
2.10.2 强制类型转换
.................33
2.10.3 计算类型长度运算符 .....33
小结 .....................................................34
习题 .....................................................34
第3章
顺序结构程序设计...................38
3.1 C语言语句概述..........................38
3.1.1 简单语句
...........................38
3.1.2 复合语句
...........................39
3.2 字符数据的输入/输出
...............39
3.2.1 字符输出函数
...................40
3.2.2 字符输入函数
...................40
3.3 格式化输入/输出函数
...............41
3.3.1 格式输出函数....................41
3.3.2 格式输入函数
...................44
3.4 顺序结构程序设计举例
............47
小结 .....................................................49
习题 .....................................................49
第4章 选择结构程序设计...................52
4.1 关系运算符和关系表达式
........52
4.1.1 关系运算符
.......................52
4.1.2 关系表达式
.......................53
4.2 逻辑运算符和逻辑表达式
........54
4.2.1 逻辑运算符
.......................54
4.2.2 逻辑表达式
.......................54
4.3 if语句及其构成的选择结构......55
4.3.1 if语句的形式.....................55
4.3.2 if语句的嵌套.....................57
4.3.3 条件运算符和条件表达式
...............................59
4.4 switch语句及其构成的选择
结构.............................................60
4.4.1 switch语句的形式.............60
4.4.2 在switch语句中使用break
语句 ...................................61
4.5 选择结构程序设计举例
............62
小结 .....................................................64
习题 .....................................................65
第5章 循环结构程序设计...................70
5.1 概述
............................................70
5.2 while语句
...................................71
5.3 do…while语句
...........................72
5.4 for语句........................................74
5.5 break语句和continue语句..........76
5.5.1 break语句
..........................76
5.5.2 continue语句
.....................77
5.6 循环的嵌套
................................77
5.7 循环结构程序设计举例
............78
小结 .....................................................81
习题 .....................................................82
第6章 数组.........................................89
6.1 一维数组
....................................89
6.1.1 一维数组的定义
...............89
6.1.2 一维数组元素的引用 .......90
6.1.3 一维数组的存储与初始化
...............................91
6.1.4 一维数组程序设计举例 ...92
6.2 二维数组与多维数组
................93
6.2.1 二维数组的定义
...............93
6.2.2 二维数组元素的引用 .......94
6.2.3 二维数组的初始化
...........95
6.2.4 二维数组程序设计举例 ...96
6.2.5 多维数组概述
...................97
6.3 字符数组与字符串
....................97
6.3.1 字符数组的定义
...............97
6.3.2 字符数组的初始化
...........98
6.3.3 字符数组元素的引用 .......98
6.3.4 字符串与字符数组
...........99
6.3.5 字符串处理函数
.............101
6.3.6 字符数组程序设计
举例 .................................103
小结 ...................................................105
习题 ...................................................105
第7章 函数.......................................112
7.1 模块化程序设计
......................112
7.1.1 模块化程序设计的概念...112
7.1.2 函数概述
.........................113
7.2 函数的定义
..............................114
7.2.1 函数定义的一般形式 .....114
7.2.2 函数的返回
.....................115
7.3 函数的调用
..............................115
7.3.1 函数调用的一般方式 .....115
7.3.2 函数参数的传递
.............116
7.3.3 函数的声明
.....................117
7.3.4 函数的嵌套调用
.............118
7.4 函数的递归调用
......................119
7.5 数组作为函数参数 ..................121
7.5.1 数组元素作为函数实参....121
7.5.2 数组名作为函数参数 .....122
7.5.3 多维数组名作为函数 参数
.................................123
7.6 变量的作用域
..........................124
7.6.1 局部变量
.........................124
7.6.2 全局变量
.........................125
7.7 变量的存储类别
......................126
7.7.1 变量的生存期
.................126
7.7.2 局部变量的存储类别 .....126
7.7.3 全局变量的存储类别 .....128
7.8 内部函数和外部函数
..............130
小结 ...................................................131
习题 ...................................................132
第8章 编译预处理............................138
8.1 宏定义
......................................138
8.1.1 无参宏定义
.....................138
8.1.2 带参宏定义
.....................141
8.2 条件编译
..................................144
8.3 文件包含
..................................146
小结 ...................................................148
习题 ...................................................148
第9章 指针.......................................150
9.1 地址和指针的概念
..................150
9.2 指针变量
..................................151
9.2.1 指针变量的定义与赋值
.................................151
9.2.2 指针变量的引用
.............152
9.3 指针与数组
..............................154
9.3.1 指针与一维数组
.............154
9.3.2 指针与二维数组
.............157
9.4 指针与字符串
..........................160
9.4.1 指向字符数组的指针
变量 .................................160
9.4.2 指向字符串常量的指针变量
.................................161
9.5 指针与函数
..............................162
9.5.1 指针作为函数的参数 .....162
9.5.2 指向函数的指针(函数指针)
...................166
9.5.3 返回指针值的函数
(指针函数) ...................168
9.6 指针数组和多级指针
..............169
9.6.1 指针数组的定义
.............169
9.6.2 指针数组与字符串 .........170
9.6.3 多级指针
.........................171
9.6.4 指针数组作为函数参数
.................................171
9.6.5 带参main函数
.................172
小结 ...................................................173
习题 ...................................................174
第10章 结构体、共用体及枚举类型.....................................182
10.1 结构体变量的定义
................182
10.1.1 结构体类型的定义 .......182
10.1.2 结构体变量的定义 .......183
10.2 结构体变量的引用和初始化.....................................184
10.2.1 结构体变量的引用 .......184
10.2.2 结构体变量的初始化 ...185
10.3 结构体数组
............................185
10.3.1 结构体数组的定义 .......185
10.3.2 结构体数组的初始化 ...186
10.3.3 结构体数组的引用 .......186
10.4 结构体指针变量
....................187
10.4.1 指向结构体变量的指针 ...............................187
10.4.2 指向结构体数组的指针
...............................189
10.5 结构体与函数
........................190
10.5.1 结构体变量作为函数参数
...............................190
10.5.2 返回结构体类型数据的函数
...............................190
10.5.3 结构体指针作为函数参数
...............................191
10.6 位段结构体
............................192
10.6.1 位段结构体类型及其变量的定义
...................192
10.6.2 位域的引用
...................193
10.7 链表
........................................194
10.7.1 链表概述 .......................194
10.7.2 内存动态管理
...............194
10.7.3 创建链表
.......................196
10.7.4 顺序访问链表中的结点
...............................197
10.7.5 在链表中插入结点 .......197
10.7.6 在链表中删除结点 .......199
10.8 共用体
....................................201
10.8.1 共用体类型及其变量的定义
...............................201
10.8.2 共用体变量的引用 ......202
10.9 枚举类型
................................204
10.9.1 枚举类型和枚举变量的定义
...............................204
10.9.2 枚举类型变量的赋值和使用
...............................204
10.10 用typedef定义类型
..............205
小结 ...................................................206
习题 ...................................................207
第11章 文件.....................................212
11.1 文件概述.................................212
11.1.1 文件的概念
...................212
11.1.2 文件的分类
...................212
11.2 文件类型指针和文件位置指针
........................................214
11.2.1 文件类型指针
...............214
11.2.2 文件位置指针
...............214
11.3 文件的打开和关闭.................214
11.3.1 文件打开函数
...............215
11.3.2 文件关闭函数
...............216
11.4 文件的读/写
...........................217
11.4.1 读/写一个字符的函数....217
11.4.2 块读/写函数
..................218
11.4.3 其他读/写函数
.............221
11.5 文件的定位和出错检测.........221
11.5.1 文件的定位函数
...........221
11.5.2 出错检测函数
...............223
小结 ...................................................223
习题 ...................................................224
第12章 C 基础..............................229
12.1 概述
........................................229
12.1.1 C 的发展历程............229
12.1.2 面向对象程序设计 .......230
12.2 C 对C的扩充.......................231
12.2.1 C 的输入/输出...........231
12.2.2 重载函数与带默认参数
的函数 ...........................233
12.2.3 变量的引用
...................234
12.2.4 内联函数
.......................236
12.2.5 作用域运算符
...............236
12.2.6 new和delete
..................237
12.3 类与对象
................................238
12.3.1 类的定义
.......................238
12.3.2 对象
...............................239
12.3.3 构造函数
.......................241
12.3.4 析构函数
.......................243
12.4 继承与派生 ............................243
12.4.1 继承与派生的方式 .......243
12.4.2 派生类的三种继承方式
...............................244
12.4.3 派生类的构造和析构
函数 .....................................246
12.5 多态性与虚函数
....................248
12.5.
1.1 C语言的发展及特点....................1
1.1.1 C语言的发展
......................1
1.1.2 C语言的特点
......................2
1.2 C语言程序的基本结构................3
1.3 算法及其描述
..............................5
1.3.1 算法的概念
.........................5
1.3.2 算法的描述方法
.................7
1.4 程序设计方法
............................11
1.4.1 程序设计的一般步骤 .......11
1.4.2 结构化程序设计方法 .......12
小结 .....................................................13
习题 .....................................................14
第2章
基本数据类型、运算符与
表达式 .....................................15
2.1 C语言的数据类型......................15
2.2 常量和变量
................................16
2.2.1 常量
...................................16
2.2.2 变量
...................................18
2.3 整型数据
....................................18
2.3.1 整型常量的表示
...............18
2.3.2 整型变量
...........................18
2.3.3 整型常量的类型
...............20
2.4 实型数据
....................................21
2.4.1 实型常量的表示
...............21
2.4.2 实型变量
...........................21
2.4.3 实型常量的类型
...............22
2.5 字符型数据
................................23
2.5.1 字符型常量
.......................23
2.5.2 字符变量
...........................25
2.6 算术运算符与算术表达式
........25
2.6.1 基本算术运算符
...............25
2.6.2 算术表达式及算术运算符的
优先级和结合性 ...............26
2.6.3 自增、自减运算符
...........27
2.7 赋值运算符与赋值表达式
........28
2.7.1 赋值运算符
.......................28
2.7.2 复合赋值运算符
...............28
2.7.3 赋值表达式
.......................29
2.8 逗号运算符与逗号表达式
........29
2.9 位运算符
....................................29
2.9.1 位运算符
...........................29
2.9.2 位运算复合赋值运算符 ...31
2.10 数据类型转换与计算类型长度运算符......................................31
2.10.1 自动类型转换
.................32
2.10.2 强制类型转换
.................33
2.10.3 计算类型长度运算符 .....33
小结 .....................................................34
习题 .....................................................34
第3章
顺序结构程序设计...................38
3.1 C语言语句概述..........................38
3.1.1 简单语句
...........................38
3.1.2 复合语句
...........................39
3.2 字符数据的输入/输出
...............39
3.2.1 字符输出函数
...................40
3.2.2 字符输入函数
...................40
3.3 格式化输入/输出函数
...............41
3.3.1 格式输出函数....................41
3.3.2 格式输入函数
...................44
3.4 顺序结构程序设计举例
............47
小结 .....................................................49
习题 .....................................................49
第4章 选择结构程序设计...................52
4.1 关系运算符和关系表达式
........52
4.1.1 关系运算符
.......................52
4.1.2 关系表达式
.......................53
4.2 逻辑运算符和逻辑表达式
........54
4.2.1 逻辑运算符
.......................54
4.2.2 逻辑表达式
.......................54
4.3 if语句及其构成的选择结构......55
4.3.1 if语句的形式.....................55
4.3.2 if语句的嵌套.....................57
4.3.3 条件运算符和条件表达式
...............................59
4.4 switch语句及其构成的选择
结构.............................................60
4.4.1 switch语句的形式.............60
4.4.2 在switch语句中使用break
语句 ...................................61
4.5 选择结构程序设计举例
............62
小结 .....................................................64
习题 .....................................................65
第5章 循环结构程序设计...................70
5.1 概述
............................................70
5.2 while语句
...................................71
5.3 do…while语句
...........................72
5.4 for语句........................................74
5.5 break语句和continue语句..........76
5.5.1 break语句
..........................76
5.5.2 continue语句
.....................77
5.6 循环的嵌套
................................77
5.7 循环结构程序设计举例
............78
小结 .....................................................81
习题 .....................................................82
第6章 数组.........................................89
6.1 一维数组
....................................89
6.1.1 一维数组的定义
...............89
6.1.2 一维数组元素的引用 .......90
6.1.3 一维数组的存储与初始化
...............................91
6.1.4 一维数组程序设计举例 ...92
6.2 二维数组与多维数组
................93
6.2.1 二维数组的定义
...............93
6.2.2 二维数组元素的引用 .......94
6.2.3 二维数组的初始化
...........95
6.2.4 二维数组程序设计举例 ...96
6.2.5 多维数组概述
...................97
6.3 字符数组与字符串
....................97
6.3.1 字符数组的定义
...............97
6.3.2 字符数组的初始化
...........98
6.3.3 字符数组元素的引用 .......98
6.3.4 字符串与字符数组
...........99
6.3.5 字符串处理函数
.............101
6.3.6 字符数组程序设计
举例 .................................103
小结 ...................................................105
习题 ...................................................105
第7章 函数.......................................112
7.1 模块化程序设计
......................112
7.1.1 模块化程序设计的概念...112
7.1.2 函数概述
.........................113
7.2 函数的定义
..............................114
7.2.1 函数定义的一般形式 .....114
7.2.2 函数的返回
.....................115
7.3 函数的调用
..............................115
7.3.1 函数调用的一般方式 .....115
7.3.2 函数参数的传递
.............116
7.3.3 函数的声明
.....................117
7.3.4 函数的嵌套调用
.............118
7.4 函数的递归调用
......................119
7.5 数组作为函数参数 ..................121
7.5.1 数组元素作为函数实参....121
7.5.2 数组名作为函数参数 .....122
7.5.3 多维数组名作为函数 参数
.................................123
7.6 变量的作用域
..........................124
7.6.1 局部变量
.........................124
7.6.2 全局变量
.........................125
7.7 变量的存储类别
......................126
7.7.1 变量的生存期
.................126
7.7.2 局部变量的存储类别 .....126
7.7.3 全局变量的存储类别 .....128
7.8 内部函数和外部函数
..............130
小结 ...................................................131
习题 ...................................................132
第8章 编译预处理............................138
8.1 宏定义
......................................138
8.1.1 无参宏定义
.....................138
8.1.2 带参宏定义
.....................141
8.2 条件编译
..................................144
8.3 文件包含
..................................146
小结 ...................................................148
习题 ...................................................148
第9章 指针.......................................150
9.1 地址和指针的概念
..................150
9.2 指针变量
..................................151
9.2.1 指针变量的定义与赋值
.................................151
9.2.2 指针变量的引用
.............152
9.3 指针与数组
..............................154
9.3.1 指针与一维数组
.............154
9.3.2 指针与二维数组
.............157
9.4 指针与字符串
..........................160
9.4.1 指向字符数组的指针
变量 .................................160
9.4.2 指向字符串常量的指针变量
.................................161
9.5 指针与函数
..............................162
9.5.1 指针作为函数的参数 .....162
9.5.2 指向函数的指针(函数指针)
...................166
9.5.3 返回指针值的函数
(指针函数) ...................168
9.6 指针数组和多级指针
..............169
9.6.1 指针数组的定义
.............169
9.6.2 指针数组与字符串 .........170
9.6.3 多级指针
.........................171
9.6.4 指针数组作为函数参数
.................................171
9.6.5 带参main函数
.................172
小结 ...................................................173
习题 ...................................................174
第10章 结构体、共用体及枚举类型.....................................182
10.1 结构体变量的定义
................182
10.1.1 结构体类型的定义 .......182
10.1.2 结构体变量的定义 .......183
10.2 结构体变量的引用和初始化.....................................184
10.2.1 结构体变量的引用 .......184
10.2.2 结构体变量的初始化 ...185
10.3 结构体数组
............................185
10.3.1 结构体数组的定义 .......185
10.3.2 结构体数组的初始化 ...186
10.3.3 结构体数组的引用 .......186
10.4 结构体指针变量
....................187
10.4.1 指向结构体变量的指针 ...............................187
10.4.2 指向结构体数组的指针
...............................189
10.5 结构体与函数
........................190
10.5.1 结构体变量作为函数参数
...............................190
10.5.2 返回结构体类型数据的函数
...............................190
10.5.3 结构体指针作为函数参数
...............................191
10.6 位段结构体
............................192
10.6.1 位段结构体类型及其变量的定义
...................192
10.6.2 位域的引用
...................193
10.7 链表
........................................194
10.7.1 链表概述 .......................194
10.7.2 内存动态管理
...............194
10.7.3 创建链表
.......................196
10.7.4 顺序访问链表中的结点
...............................197
10.7.5 在链表中插入结点 .......197
10.7.6 在链表中删除结点 .......199
10.8 共用体
....................................201
10.8.1 共用体类型及其变量的定义
...............................201
10.8.2 共用体变量的引用 ......202
10.9 枚举类型
................................204
10.9.1 枚举类型和枚举变量的定义
...............................204
10.9.2 枚举类型变量的赋值和使用
...............................204
10.10 用typedef定义类型
..............205
小结 ...................................................206
习题 ...................................................207
第11章 文件.....................................212
11.1 文件概述.................................212
11.1.1 文件的概念
...................212
11.1.2 文件的分类
...................212
11.2 文件类型指针和文件位置指针
........................................214
11.2.1 文件类型指针
...............214
11.2.2 文件位置指针
...............214
11.3 文件的打开和关闭.................214
11.3.1 文件打开函数
...............215
11.3.2 文件关闭函数
...............216
11.4 文件的读/写
...........................217
11.4.1 读/写一个字符的函数....217
11.4.2 块读/写函数
..................218
11.4.3 其他读/写函数
.............221
11.5 文件的定位和出错检测.........221
11.5.1 文件的定位函数
...........221
11.5.2 出错检测函数
...............223
小结 ...................................................223
习题 ...................................................224
第12章 C 基础..............................229
12.1 概述
........................................229
12.1.1 C 的发展历程............229
12.1.2 面向对象程序设计 .......230
12.2 C 对C的扩充.......................231
12.2.1 C 的输入/输出...........231
12.2.2 重载函数与带默认参数
的函数 ...........................233
12.2.3 变量的引用
...................234
12.2.4 内联函数
.......................236
12.2.5 作用域运算符
...............236
12.2.6 new和delete
..................237
12.3 类与对象
................................238
12.3.1 类的定义
.......................238
12.3.2 对象
...............................239
12.3.3 构造函数
.......................241
12.3.4 析构函数
.......................243
12.4 继承与派生 ............................243
12.4.1 继承与派生的方式 .......243
12.4.2 派生类的三种继承方式
...............................244
12.4.3 派生类的构造和析构
函数 .....................................246
12.5 多态性与虚函数
....................248
12.5.