《华章程序员书库C编程技巧:117个问题解决方案示例》[印]谢瑞什・查万(ShirishCh | PDF下载|ePub下载
华章程序员书库C编程技巧:117个问题解决方案示例 版权信息
- 出版社:机械工业出版社
- 出版时间:2018-08-01
- ISBN:9787111622499
- 条形码:9787111622499 ; 978-7-111-62249-9
华章程序员书库C编程技巧:117个问题解决方案示例 本书特色
用实用和信息丰富的方法解决C编程问题。本书涵盖了C编程的各个方面,包括C的基础知识、运算符和表达式、控制语句、递归和用户定义函数。每一章都包含一系列方法,你可以很容易地参考它们,快速找到你想要的答案。
华章程序员书库C编程技巧:117个问题解决方案示例 内容简介
用实用和信息丰富的方法解决C编程问题。本书涵盖了C编程的各个方面,包括C的基础知识、运算符和表达式、控制语句、递归和用户定义函数。每一章都包含一系列方法,你可以很容易地参考它们,快速找到你想要的答案。
华章程序员书库C编程技巧:117个问题解决方案示例 目录
前言
致谢
第1章 欢迎学习C语言1
1.1 程序、软件和操作系统2
1.2 机器语言和汇编语言2
1.3 过程式语言3
1.4 面向对象的语言3
1.5 计算机术语4
1.6 编译和解释语言4
1.7 **个C程序5
1.8 C的突出特点6
1.9 隐式类型转换7
1.10 显式类型转换9
第2章 控制语句10
2.1 求1到N的整数的总和10
2.2 计算数字的阶乘12
2.3 生成斐波那契数列14
2.4 确定给定数字是否为质数17
2.5 计算正弦函数20
2.6 计算余弦函数21
2.7 计算二次方程的根23
2.8 计算整数的反转数25
2.9 使用嵌套循环打印几何图案26
2.10 生成终值利息系数表28
第3章 函数和数组31
3.1 确定圆周率π的值32
3.2 从数字列表中选择质数34
3.3 使用递归进行数字求和37
3.4 使用递归计算斐波那契数列39
3.5 使用递归计算数字的阶乘40
3.6 搜索整数数组中的*大元素42
3.7 解决经典的汉诺塔问题43
3.8 解决八皇后问题46
3.9 计算给定对象集的排列和组合48
3.10 对两个矩阵求和50
3.11 计算矩阵的转置53
3.12 计算矩阵的乘积55
第4章 指针和数组59
4.1 从包含int类型数据的数组中获取数据59
4.2 使用数组名称从数组中获取数据61
4.3 从包含char和double类型数据的数组中获取数据62
4.4 访问越界数组元素64
4.5 存储字符串66
4.6 存储字符串而不进行初始化68
4.7 在交互式会话中存储字符串70
4.8 获取二维数组中元素的地址71
4.9 获取二维数组中行的基址73
4.10 从二维数组中获取数据74
4.11 使用数组名称从二维数组中获取 数据76
4.12 使用指针数组从数组中获取数据78
4.13 物理交换字符串80
4.14 逻辑交换字符串82
4.15 以交互方式存储字符串85
4.16 将命令行参数传递给程序87
4.17 使用指向指针的指针获取存储的字符串90
第5章 利用指针使用函数和结构94
5.1 通过引用传递函数参数94
5.2 显示嵌套结构中存储的数据96
5.3 使用函数构建结构102
5.4 通过将结构传递给函数来修改结构中的数据103
5.5 通过将指向结构的指针传递给函数来修改结构中的数据105
5.6 使用结构数组存储和获取数据107
5.7 在交互模式下使用结构数组存储和获取数据110
5.8 使用函数指针调用函数113
5.9 实现基于文本的菜单系统115
第6章 数据文件118
6.1 逐个字符地读取文本文件118
6.2 文件打开失败时处理错误122
6.3 以批处理模式写入文本文件125
6.4 以交互模式写入文本文件127
6.5 逐个字符串地读取文本文件130
6.6 逐个字符地写入文本文件132
6.7 将整数写入文本文件134
6.8 将结构写入文本文件136
6.9 读取存储在文本文件中的整数139
6.10 读取存储在文本文件中的结构141
6.11 将整数写入二进制文件143
6.12 将结构写入二进制文件145
6.13 读取写入二进制文件的整数147
6.14 读取写入二进制文件的结构149
6.15 重命名文件151
6.16 删除文件152
6.17 复制文本文件153
6.18 复制二进制文件155
6.19 写入文件并读取该文件157
6.20 将文本文件定位到所需字符159
6.21 从键盘设备文件中读取165
6.22 将文本写入显示器设备文件167
6.23 从键盘设备文件读取文本并将其写入显示器设备文件169
第7章 自引用结构171
7.1 以交互方式生成数字列表171
7.2 使用匿名变量创建链表173
7.3 从链表中删除组件177
7.4 将组件插入链表181
7.5 在交互式会话中创建链表187
7.6 处理线性链表191
7.7 创建具备前向和后向遍历功能的线性链表200
第8章 栈和队列203
8.1 将栈实现为数组204
8.2 将栈实现为链表207
8.3 将中缀表达式转换为后缀表达式212
8.4 将中缀表达式转换为前缀表达式215
8.5 将循环队列实现为数组218
第9章 搜索和排序223
9.1 使用线性搜索查找数据元素224
9.2 使用二分搜索查找数据元素226
9.3 使用冒泡排序对给定的数字列表进行排序228
9.4 使用插入排序对给定的数字列表进行排序231
9.5 使用选择排序对给定的数字列表进行排序233
9.6 使用归并排序对给定的数字列表进行排序235
9.7 使用希尔排序对给定的数字列表进行排序238
9.8 使用快速排序对给定的数字列表进行排序240
第10章 密码系统243
10.1 使用反向密码方法245
10.2 使用恺撒密码方法248
10.3 使用转置密码方法251
10.4 使用乘法密码方法255
10.5 使用仿射密码方法259
10.6 使用简单替换密码方法263
10.7 使用Vigenère密码方法268
10.8 使用一次性密钥密码方法273
10.9 使用RSA密码方法277
第11章 数值方法283
11.1 用对分法求方程的根284
11.2 用试位法求方程的根286
11.3 用穆勒法求方程的根289
11.4 用牛顿拉夫森迭代法求方程的根292
11.5 用牛顿前向插值法构造新的数据点294
11.6 用牛顿后向插值法构造新的数据点296
11.7 用高斯前向插值法构造新的数据点299
11.8 用高斯后向插值法构造新的数据点301
11.9 用斯特林插值法构造新的数据点304
11.10 用贝塞尔插值法构造新的数据点306
11.11 用拉普拉斯-埃弗雷特插值法构造新的数据点309
致谢
第1章 欢迎学习C语言1
1.1 程序、软件和操作系统2
1.2 机器语言和汇编语言2
1.3 过程式语言3
1.4 面向对象的语言3
1.5 计算机术语4
1.6 编译和解释语言4
1.7 **个C程序5
1.8 C的突出特点6
1.9 隐式类型转换7
1.10 显式类型转换9
第2章 控制语句10
2.1 求1到N的整数的总和10
2.2 计算数字的阶乘12
2.3 生成斐波那契数列14
2.4 确定给定数字是否为质数17
2.5 计算正弦函数20
2.6 计算余弦函数21
2.7 计算二次方程的根23
2.8 计算整数的反转数25
2.9 使用嵌套循环打印几何图案26
2.10 生成终值利息系数表28
第3章 函数和数组31
3.1 确定圆周率π的值32
3.2 从数字列表中选择质数34
3.3 使用递归进行数字求和37
3.4 使用递归计算斐波那契数列39
3.5 使用递归计算数字的阶乘40
3.6 搜索整数数组中的*大元素42
3.7 解决经典的汉诺塔问题43
3.8 解决八皇后问题46
3.9 计算给定对象集的排列和组合48
3.10 对两个矩阵求和50
3.11 计算矩阵的转置53
3.12 计算矩阵的乘积55
第4章 指针和数组59
4.1 从包含int类型数据的数组中获取数据59
4.2 使用数组名称从数组中获取数据61
4.3 从包含char和double类型数据的数组中获取数据62
4.4 访问越界数组元素64
4.5 存储字符串66
4.6 存储字符串而不进行初始化68
4.7 在交互式会话中存储字符串70
4.8 获取二维数组中元素的地址71
4.9 获取二维数组中行的基址73
4.10 从二维数组中获取数据74
4.11 使用数组名称从二维数组中获取 数据76
4.12 使用指针数组从数组中获取数据78
4.13 物理交换字符串80
4.14 逻辑交换字符串82
4.15 以交互方式存储字符串85
4.16 将命令行参数传递给程序87
4.17 使用指向指针的指针获取存储的字符串90
第5章 利用指针使用函数和结构94
5.1 通过引用传递函数参数94
5.2 显示嵌套结构中存储的数据96
5.3 使用函数构建结构102
5.4 通过将结构传递给函数来修改结构中的数据103
5.5 通过将指向结构的指针传递给函数来修改结构中的数据105
5.6 使用结构数组存储和获取数据107
5.7 在交互模式下使用结构数组存储和获取数据110
5.8 使用函数指针调用函数113
5.9 实现基于文本的菜单系统115
第6章 数据文件118
6.1 逐个字符地读取文本文件118
6.2 文件打开失败时处理错误122
6.3 以批处理模式写入文本文件125
6.4 以交互模式写入文本文件127
6.5 逐个字符串地读取文本文件130
6.6 逐个字符地写入文本文件132
6.7 将整数写入文本文件134
6.8 将结构写入文本文件136
6.9 读取存储在文本文件中的整数139
6.10 读取存储在文本文件中的结构141
6.11 将整数写入二进制文件143
6.12 将结构写入二进制文件145
6.13 读取写入二进制文件的整数147
6.14 读取写入二进制文件的结构149
6.15 重命名文件151
6.16 删除文件152
6.17 复制文本文件153
6.18 复制二进制文件155
6.19 写入文件并读取该文件157
6.20 将文本文件定位到所需字符159
6.21 从键盘设备文件中读取165
6.22 将文本写入显示器设备文件167
6.23 从键盘设备文件读取文本并将其写入显示器设备文件169
第7章 自引用结构171
7.1 以交互方式生成数字列表171
7.2 使用匿名变量创建链表173
7.3 从链表中删除组件177
7.4 将组件插入链表181
7.5 在交互式会话中创建链表187
7.6 处理线性链表191
7.7 创建具备前向和后向遍历功能的线性链表200
第8章 栈和队列203
8.1 将栈实现为数组204
8.2 将栈实现为链表207
8.3 将中缀表达式转换为后缀表达式212
8.4 将中缀表达式转换为前缀表达式215
8.5 将循环队列实现为数组218
第9章 搜索和排序223
9.1 使用线性搜索查找数据元素224
9.2 使用二分搜索查找数据元素226
9.3 使用冒泡排序对给定的数字列表进行排序228
9.4 使用插入排序对给定的数字列表进行排序231
9.5 使用选择排序对给定的数字列表进行排序233
9.6 使用归并排序对给定的数字列表进行排序235
9.7 使用希尔排序对给定的数字列表进行排序238
9.8 使用快速排序对给定的数字列表进行排序240
第10章 密码系统243
10.1 使用反向密码方法245
10.2 使用恺撒密码方法248
10.3 使用转置密码方法251
10.4 使用乘法密码方法255
10.5 使用仿射密码方法259
10.6 使用简单替换密码方法263
10.7 使用Vigenère密码方法268
10.8 使用一次性密钥密码方法273
10.9 使用RSA密码方法277
第11章 数值方法283
11.1 用对分法求方程的根284
11.2 用试位法求方程的根286
11.3 用穆勒法求方程的根289
11.4 用牛顿拉夫森迭代法求方程的根292
11.5 用牛顿前向插值法构造新的数据点294
11.6 用牛顿后向插值法构造新的数据点296
11.7 用高斯前向插值法构造新的数据点299
11.8 用高斯后向插值法构造新的数据点301
11.9 用斯特林插值法构造新的数据点304
11.10 用贝塞尔插值法构造新的数据点306
11.11 用拉普拉斯-埃弗雷特插值法构造新的数据点309
华章程序员书库C编程技巧:117个问题解决方案示例 作者简介
[印]谢瑞什・查万(Shirish Chavan),是一名软件开发人员、教师、作家和演说家。他撰写了9本计算机书籍,涉及Java、Visual Basic.NET和桌面出版(DTP)。他在多个IT部门拥有25年的经验。他主要对密码学感兴趣。目前正在编写一本关于Python编程的书,并且还在开发一些软件项目。他于1982年在印度Kolhapur的shivaji大学获得理论物理学硕士学位。他还在各个研究所担任客座教授,教授计算机科学和物理课程。
发表回复
要发表评论,您必须先登录。