书籍详情
程序设计基础
作者:李军 编
出版社:西安电子科技大学出版社
出版时间:2014-01-01
ISBN:9787560632339
定价:¥36.00
购买这本书可以去
内容简介
本书主要介绍C语言环境下进行程序设计的基本思想、方法和技巧。本书共12章,内容包括程序设计概论、C语言概述、算术运算程序设计、逻辑运算与流程控制、常用基础算法与程序设计、模块化程序设计技术、批量数据处理程序设计、文本信息处理程序设计、结构数据类型、在磁盘上存取数据、位运算、编写大型程序等。本书内容丰富、取材新颖、叙述通俗易懂,可作为计算机及其他理工科各专业的程序设计课程教材,也可作为编程爱好者的参考书。
作者简介
暂缺《程序设计基础》作者简介
目录
第1章 程序设计概论 1
1.1 问题求解的思维过程 1
1.2 算法基础 3
1.2.1 算法的概念及其特征 3
1.2.2 算法的基本结构 4
1.2.3 算法的描述方法 4
1.3 数据结构基础 6
1.4 程序设计语言概述 8
1.4.1 程序设计语言的发展历史 8
1.4.2 程序设计范型 11
1.4.3 过程型程序设计语言的语法元素 12
1.4.4 过程型程序设计语言的基本功能 13
1.5 程序设计的一般过程 17
1.6 程序的构建与运行 19
习题1 21
第2章 C语言概述 22
2.1 C语言程序的基本结构 22
2.1.1 结构单一的C程序 22
2.1.2 结构相对完整的C程序 24
2.1.3 对C程序的一般认识 26
2.2 C语言的语法元素 26
2.2.1 字符集 26
2.2.2 标识符 27
2.2.3 定界符与间隔符 28
2.3 数据类型与数据结构 28
2.3.1 数据类型 28
2.3.2 变量与常量 30
2.4 运算与表达式 33
2.5 可执行语句 34
2.6 函数 35
2.7 输入/输出操作与函数 36
2.7.1 格式化输入/输出函数 36
2.7.2 字符输入/输出函数 40
*2.8 在Visual C++ 6.0下调试C程序 40
习题2 44
第3章 算术运算程序设计 46
3.1 变量的深度解析 46
3.1.1 变量赋初值 46
3.1.2 变量的访问 47
3.2 算术表达式求值 48
3.2.1 算术运算符 48
3.2.2 表达式的书写 50
3.2.3 表达式的数据类型 52
3.2.4 表达式求值规则 55
3.3 案例研究——求解一元二次方程 55
3.4 变量地址与指针变量 57
3.4.1 变量的地址 57
3.4.2 简单指针变量 58
3.4.3 指针变量的赋值 59
3.4.4 指针变量的引用 60
3.4.5 指针变量的初步应用 62
*3.5 常见错误及其排除方法 64
3.5.1 语法错误 64
3.5.2 运行错误 66
3.5.3 逻辑错误 67
习题3 67
第4章 逻辑运算与流程控制 70
4.1 逻辑运算及其表达式 70
4.1.1 关系运算及其表达式 70
4.1.2 逻辑运算 71
4.1.3 各类运算符的优先级 72
4.2 流程控制概述 73
4.3 选择控制结构 73
4.3.1 只有一路选择方案的if语句 73
4.3.2 具有两路选择方案的if语句 75
4.3.3 多路选择方案与if语句嵌套 76
4.4 循环控制结构 81
4.4.1 计数循环与for语句 82
4.4.2 条件循环与while语句 84
4.4.3 条件循环与do-while语句 86
4.4.4 标志循环与交互式循环 87
4.4.5 流程控制结构的嵌套 89
4.5 案例研究 90
4.5.1 选举计票问题程序设计 90
4.5.2 快递运费计价问题程序设计 92
4.6 三个流程控制语句的使用 94
4.6.1 break语句 94
4.6.2 continue语句 95
4.6.3 switch语句 96
*4.7 流程控制中的常见错误 97
4.7.1 等式运算符与赋值运算符的误用 97
4.7.2 循环语句中的花括号问题 98
4.7.3 if语句与while语句的混淆问题 98
4.7.4 死循环与差1循环错误 99
4.7.5 其他常见错误 99
习题4 100
第5章 常用基础算法与程序设计 103
5.1 基于迭代策略的问题求解 103
5.1.1 用递推法求解问题 104
5.1.2 用倒推法求解问题 109
5.1.3 用迭代法求解高次方程 110
5.2 基于穷举策略的问题求解 112
5.2.1 穷举法解方程组 113
5.2.2 求解数字与数值问题 115
5.2.3 求解逻辑问题 120
*5.3 程序调试 122
5.3.1 常用的调试命令 123
5.3.2 动态调试的主要方法 123
习题5 125
第6章 模块化程序设计技术 126
6.1 函数的定义及其原型声明 126
6.1.1 函数的定义 126
6.1.2 函数原型声明 128
6.2 数据在函数中的传递方式 130
6.2.1 函数的调用方式 130
6.2.2 函数参数的传递方式 131
6.2.3 函数值的返回方式 132
6.2.4 函数中的自动局部变量 133
6.3 函数与指针 134
6.3.1 用指针作为函数的形式参数 134
6.3.2 返回指针值的函数 136
6.3.3 指向函数的指针 137
6.4 递归问题程序设计 139
6.5 模块化程序设计技术 142
6.5.1 使用函数的好处 142
6.5.2 模块化程序设计方法 143
6.6 案例研究——分数运算的解决方案 146
*6.7 函数编程的常见错误与程序测试 151
6.7.1 函数编程的常见错误 151
6.7.2 程序测试 152
习题6 153
第7章 批量数据处理程序设计 156
7.1 一维数组 156
7.1.1 一维数组的定义和引用 156
7.1.2 一维数组的初始化与赋值 157
7.1.3 指向数组元素的指针 159
7.1.4 将一维数组传递给函数 163
7.2 一维数组的应用 164
7.2.1 集合搜索 164
7.2.2 集合中元素的排序 168
7.3 二维数组 170
7.3.1 二维数组的定义及引用 170
7.3.2 二维数组的初始化 171
7.3.3 二维数组与指向行元素的指针 172
7.3.4 二维数组作为函数参数 176
7.4 二维数组的应用 178
7.4.1 矩阵的简单运算 179
7.4.2 栅格数据处理 182
7.5 案例研究——快递费用核算解决方案 185
7.6 动态创建数组 189
7.6.1 动态创建一维数组 189
7.6.2 动态创建二维数组 191
*7.7 数组下标越界问题 192
习题7 193
第8章 文本信息处理程序设计 199
8.1 字符数组与字符串 199
8.1.1 字符数组 199
8.1.2 字符串 200
8.2 字符串的输入/输出 201
8.2.1 字符串的格式化输入/输出 201
8.2.2 字符串的整行输入/输出 202
8.3 对字符串的操作 202
8.3.1 两个字符串的相互赋值 203
8.3.2 字符串长度的测定 204
8.3.3 字符串的比较 204
8.3.4 字符串的连接 205
8.3.5 字符串的搜索与定位 206
8.4 案例研究——文本信息处理 208
*8.5 字符分析与常见字符串编程错误 213
8.5.1 字符分析与转换 213
8.5.2 常见字符串编程错误 213
习题8 215
第9章 结构数据类型 218
9.1 结构类型及结构体 218
9.1.1 结构类型的定义 218
9.1.2 结构体的定义及引用 220
9.1.3 结构体作为函数的参数及返回值 222
9.1.4 结构数组 224
9.1.5 指向结构类型的指针 226
9.2 对结构类型的操作 229
9.2.1 用结构类型表示复数 230
9.2.2 对结构体进行输入/输出 232
9.2.3 对结构体进行比较运算 233
9.3 链表 234
9.3.1 链表概述 234
9.3.2 动态创建链表 236
9.3.3 遍历与查找链表 238
9.3.4 向链表中插入结点 239
9.3.5 从链表中删除结点 241
9.3.6 链表的综合操作 242
9.4 案例研究——用结构类型改进快递
费用结算方案 244
*9.5 常见编程错误与共用类型 250
9.5.1 结构类型常见编程错误 250
9.5.2 共用类型 251
9.5.3 枚举类型 254
习题9 256
第10章 在磁盘上存取数据 259
10.1 磁盘文件概述 259
10.1.1 文件的分类 259
10.1.2 文件名 259
10.1.3 文件控制块与指针 260
10.1.4 文件缓冲区 261
10.2 文件的打开与关闭 261
10.3 对文本文件的操作 263
10.3.1 文本文件的存储格式 263
10.3.2 对文本文件的读写操作 263
10.4 对二进制文件的操作 267
10.5 文件的随机读写 271
10.6 案例研究——快递业务简单数据库
? 的建立 273
*10.7 文件的常见编程错误 280
习题10 281
第11章 位运算 283
11.1 按位进行逻辑运算 283
11.1.1 位逻辑运算的概念 283
11.1.2 位运算的应用 285
11.2 移位运算 289
11.2.1 移位运算的概念 289
11.2.2 移位运算的应用 290
11. 3 位运算在加密/解密中的应用 290
习题11 293
第12章 编写大型程序 295
12.1 复杂问题的抽象与分解 295
12.1.1 过程抽象 295
12.1.2 数据抽象 296
12.2 个人函数库的创建 296
12.2.1 头文件 297
12.2.2 实现文件 298
12.3 变量的存储类别 299
12.3.1 extern声明全局变量 300
12.3.2 auto变量 302
12.3.3 static变量 302
12.3.4 register变量 304
12.4 条件编译 305
习题12 307
附录A ASCII字符表 310
附录B C语言库函数 312
参考文献 319
1.1 问题求解的思维过程 1
1.2 算法基础 3
1.2.1 算法的概念及其特征 3
1.2.2 算法的基本结构 4
1.2.3 算法的描述方法 4
1.3 数据结构基础 6
1.4 程序设计语言概述 8
1.4.1 程序设计语言的发展历史 8
1.4.2 程序设计范型 11
1.4.3 过程型程序设计语言的语法元素 12
1.4.4 过程型程序设计语言的基本功能 13
1.5 程序设计的一般过程 17
1.6 程序的构建与运行 19
习题1 21
第2章 C语言概述 22
2.1 C语言程序的基本结构 22
2.1.1 结构单一的C程序 22
2.1.2 结构相对完整的C程序 24
2.1.3 对C程序的一般认识 26
2.2 C语言的语法元素 26
2.2.1 字符集 26
2.2.2 标识符 27
2.2.3 定界符与间隔符 28
2.3 数据类型与数据结构 28
2.3.1 数据类型 28
2.3.2 变量与常量 30
2.4 运算与表达式 33
2.5 可执行语句 34
2.6 函数 35
2.7 输入/输出操作与函数 36
2.7.1 格式化输入/输出函数 36
2.7.2 字符输入/输出函数 40
*2.8 在Visual C++ 6.0下调试C程序 40
习题2 44
第3章 算术运算程序设计 46
3.1 变量的深度解析 46
3.1.1 变量赋初值 46
3.1.2 变量的访问 47
3.2 算术表达式求值 48
3.2.1 算术运算符 48
3.2.2 表达式的书写 50
3.2.3 表达式的数据类型 52
3.2.4 表达式求值规则 55
3.3 案例研究——求解一元二次方程 55
3.4 变量地址与指针变量 57
3.4.1 变量的地址 57
3.4.2 简单指针变量 58
3.4.3 指针变量的赋值 59
3.4.4 指针变量的引用 60
3.4.5 指针变量的初步应用 62
*3.5 常见错误及其排除方法 64
3.5.1 语法错误 64
3.5.2 运行错误 66
3.5.3 逻辑错误 67
习题3 67
第4章 逻辑运算与流程控制 70
4.1 逻辑运算及其表达式 70
4.1.1 关系运算及其表达式 70
4.1.2 逻辑运算 71
4.1.3 各类运算符的优先级 72
4.2 流程控制概述 73
4.3 选择控制结构 73
4.3.1 只有一路选择方案的if语句 73
4.3.2 具有两路选择方案的if语句 75
4.3.3 多路选择方案与if语句嵌套 76
4.4 循环控制结构 81
4.4.1 计数循环与for语句 82
4.4.2 条件循环与while语句 84
4.4.3 条件循环与do-while语句 86
4.4.4 标志循环与交互式循环 87
4.4.5 流程控制结构的嵌套 89
4.5 案例研究 90
4.5.1 选举计票问题程序设计 90
4.5.2 快递运费计价问题程序设计 92
4.6 三个流程控制语句的使用 94
4.6.1 break语句 94
4.6.2 continue语句 95
4.6.3 switch语句 96
*4.7 流程控制中的常见错误 97
4.7.1 等式运算符与赋值运算符的误用 97
4.7.2 循环语句中的花括号问题 98
4.7.3 if语句与while语句的混淆问题 98
4.7.4 死循环与差1循环错误 99
4.7.5 其他常见错误 99
习题4 100
第5章 常用基础算法与程序设计 103
5.1 基于迭代策略的问题求解 103
5.1.1 用递推法求解问题 104
5.1.2 用倒推法求解问题 109
5.1.3 用迭代法求解高次方程 110
5.2 基于穷举策略的问题求解 112
5.2.1 穷举法解方程组 113
5.2.2 求解数字与数值问题 115
5.2.3 求解逻辑问题 120
*5.3 程序调试 122
5.3.1 常用的调试命令 123
5.3.2 动态调试的主要方法 123
习题5 125
第6章 模块化程序设计技术 126
6.1 函数的定义及其原型声明 126
6.1.1 函数的定义 126
6.1.2 函数原型声明 128
6.2 数据在函数中的传递方式 130
6.2.1 函数的调用方式 130
6.2.2 函数参数的传递方式 131
6.2.3 函数值的返回方式 132
6.2.4 函数中的自动局部变量 133
6.3 函数与指针 134
6.3.1 用指针作为函数的形式参数 134
6.3.2 返回指针值的函数 136
6.3.3 指向函数的指针 137
6.4 递归问题程序设计 139
6.5 模块化程序设计技术 142
6.5.1 使用函数的好处 142
6.5.2 模块化程序设计方法 143
6.6 案例研究——分数运算的解决方案 146
*6.7 函数编程的常见错误与程序测试 151
6.7.1 函数编程的常见错误 151
6.7.2 程序测试 152
习题6 153
第7章 批量数据处理程序设计 156
7.1 一维数组 156
7.1.1 一维数组的定义和引用 156
7.1.2 一维数组的初始化与赋值 157
7.1.3 指向数组元素的指针 159
7.1.4 将一维数组传递给函数 163
7.2 一维数组的应用 164
7.2.1 集合搜索 164
7.2.2 集合中元素的排序 168
7.3 二维数组 170
7.3.1 二维数组的定义及引用 170
7.3.2 二维数组的初始化 171
7.3.3 二维数组与指向行元素的指针 172
7.3.4 二维数组作为函数参数 176
7.4 二维数组的应用 178
7.4.1 矩阵的简单运算 179
7.4.2 栅格数据处理 182
7.5 案例研究——快递费用核算解决方案 185
7.6 动态创建数组 189
7.6.1 动态创建一维数组 189
7.6.2 动态创建二维数组 191
*7.7 数组下标越界问题 192
习题7 193
第8章 文本信息处理程序设计 199
8.1 字符数组与字符串 199
8.1.1 字符数组 199
8.1.2 字符串 200
8.2 字符串的输入/输出 201
8.2.1 字符串的格式化输入/输出 201
8.2.2 字符串的整行输入/输出 202
8.3 对字符串的操作 202
8.3.1 两个字符串的相互赋值 203
8.3.2 字符串长度的测定 204
8.3.3 字符串的比较 204
8.3.4 字符串的连接 205
8.3.5 字符串的搜索与定位 206
8.4 案例研究——文本信息处理 208
*8.5 字符分析与常见字符串编程错误 213
8.5.1 字符分析与转换 213
8.5.2 常见字符串编程错误 213
习题8 215
第9章 结构数据类型 218
9.1 结构类型及结构体 218
9.1.1 结构类型的定义 218
9.1.2 结构体的定义及引用 220
9.1.3 结构体作为函数的参数及返回值 222
9.1.4 结构数组 224
9.1.5 指向结构类型的指针 226
9.2 对结构类型的操作 229
9.2.1 用结构类型表示复数 230
9.2.2 对结构体进行输入/输出 232
9.2.3 对结构体进行比较运算 233
9.3 链表 234
9.3.1 链表概述 234
9.3.2 动态创建链表 236
9.3.3 遍历与查找链表 238
9.3.4 向链表中插入结点 239
9.3.5 从链表中删除结点 241
9.3.6 链表的综合操作 242
9.4 案例研究——用结构类型改进快递
费用结算方案 244
*9.5 常见编程错误与共用类型 250
9.5.1 结构类型常见编程错误 250
9.5.2 共用类型 251
9.5.3 枚举类型 254
习题9 256
第10章 在磁盘上存取数据 259
10.1 磁盘文件概述 259
10.1.1 文件的分类 259
10.1.2 文件名 259
10.1.3 文件控制块与指针 260
10.1.4 文件缓冲区 261
10.2 文件的打开与关闭 261
10.3 对文本文件的操作 263
10.3.1 文本文件的存储格式 263
10.3.2 对文本文件的读写操作 263
10.4 对二进制文件的操作 267
10.5 文件的随机读写 271
10.6 案例研究——快递业务简单数据库
? 的建立 273
*10.7 文件的常见编程错误 280
习题10 281
第11章 位运算 283
11.1 按位进行逻辑运算 283
11.1.1 位逻辑运算的概念 283
11.1.2 位运算的应用 285
11.2 移位运算 289
11.2.1 移位运算的概念 289
11.2.2 移位运算的应用 290
11. 3 位运算在加密/解密中的应用 290
习题11 293
第12章 编写大型程序 295
12.1 复杂问题的抽象与分解 295
12.1.1 过程抽象 295
12.1.2 数据抽象 296
12.2 个人函数库的创建 296
12.2.1 头文件 297
12.2.2 实现文件 298
12.3 变量的存储类别 299
12.3.1 extern声明全局变量 300
12.3.2 auto变量 302
12.3.3 static变量 302
12.3.4 register变量 304
12.4 条件编译 305
习题12 307
附录A ASCII字符表 310
附录B C语言库函数 312
参考文献 319
猜您喜欢