《C语言程式设计能力教程(第二版)》是2010年中国铁道出版社出版的图书,作者是赵凤芝。
基本介绍
- 书名C语言程式设计能力教程(第二版)
- 作者赵凤芝
- ISBN978-7-113-10766-6
- 页数352页
- 定价33 元
- 出版社中国铁道出版社
- 出版时间2010-03-01
- 开本16开
内容简介
本书是国家社会科学基金(教育学科)“十一五”规划课题研究成果——全国高等职业院校计算机教育规划教材
本书以突出实践套用能力为出发点,採用流行的“案例与任务驱动、项目实训与套用”的模式,从大量实例入手,由浅入深地对C语言程式设计内容进行了全面讲述。全书共分11章,分别介绍了C语言程式的概述、编制C程式的基础知识、顺序结构程式设计、选择结构程式设计、循环结构程式设计、数组套用、函式套用、指针、结构体(鍊表)、共同体和枚举类型、档案及几个典型套用实例和综合测试题等。、本书是由具有多年C语言程式设计教学经验的一线教师和专家根据实践教学和套用研究体会编写而成的。内容通俗易懂,实例非常丰富、典型而全面,目标明确,实用性强,理论适度,深入浅出,注重理论与实践结合,形式新颖,使读者通过实例能够轻鬆愉快地全面掌握C语言程式设计的方法和套用。
本书既适合作为大中专院校程式设计课程的教材,也适合参加培训、考级、考试的人员及广大计算机爱好者作为自学和参考用书。
图书目录
第1章 进入C语言程式世界 1
1.1 了解C语言程式的结构 1
1.1.1 C语言程式的结构分析 1
1.1.2 C语言程式的结构特点 3
1.1.3 C语言程式的书写格式 3
1.2 设计简单的C语言程式 4
1.2.1 编程示例 4
1.2.2 算法及算法的表示 6
1.3 C程式的调试与运行 9
1.3.1 C语言程式的实现过程 9
1.3.2 在Turbo C编译系统环境中实现C程式 10
1.3.3 在Visual C++环境中实现C程式 11
1.4 计算机语言的发展过程 18
1.4.1 第一代语言——机器语言(低级语言) 18
1.4.2 第二代语言——彙编语言(低级语言) 19
1.4.3 第三代语言——算法语言(高级语言) 20
1.4.4 第四代语言——非过程化语言 21
技能训练 22
小结 22
习题 23
项目实训 23
第2章 编制C程式的基础知识 25
2.1 常量与变数 25
2.2 C语言的基本数据类型 26
2.2.1 整型数据 27
2.2.2 实型数据 29
2.2.3 字元型数据 31
2.3 C语言的常用运算符和表达式 35
2.3.1 算术运算符及其表达式 35
2.3.2 赋值运算符及其表达式 36
2.3.3 自增和自减运算符和强制类型运算符 38
2.3.4 关係运算符及其表达式 39
2.3.5 逻辑运算符及其表达式 40
2.3.6 逗号运算符及其表达式 41
2.3.7 各种类型数据之间的转换 42
2.3.8 套用实例 43
技能训练 45
小结 45
习题 45
项目实训 47
第3章 顺序结构程式设计 49
3.1 结构化程式设计的三种基本结构 49
3.2 数据的输入与输出 52
3.2.1 格式输出函式printf() 52
3.2.2 格式输入函式scanf() 55
3.2.3 单个字元输入/输出函式(getchar()/putchar()) 57
3.3 顺序结构程式设计举例 58
技能训练一 60
技能训练二 60
小结 61
习题 61
项目实训 63
第4章 选择结构程式设计 65
4.1 选择结构程式设计简介 65
4.2 if语句的典型套用形式 66
4.2.1 简单if形式 67
4.2.2 标準形式if…else 67
4.2.3 嵌套if语句形式 69
4.2.4 多分支if…else if语句形式 71
4.3 条件运算符和条件表达式 73
4.4 switch语句的套用——评定学生成绩 73
4.5 选择结构程式设计套用 76
4.5.1 计算银行存款利息 76
4.5.2 依据体重判断健康状况 77
4.5.3 设计简易计算器 78
技能训练 79
小结 80
习题 81
项目实训 83
第5章 循环结构程式设计 85
5.1 为什幺使用循环 85
5.2 while语句与do…while语句 86
5.2.1 while语句(当型循环) 86
技能训练一 88
能力拓展 89
5.2.2 do...while语句(直到型循环) 89
5.3 for语句实现循环 90
技能训练二 91
技能训练三 92
5.4 几种循环的比较 93
5.5 多重循环(嵌套循环) 94
能力拓展 96
编程技巧 96
5.6 break和continue语句 97
5.6.1 break语句 97
5.6.2 continue语句 99
5.7 循环结构程式设计举例 100
5.7.1 找最大值及求和 100
5.7.2 求素数 103
5.7.3 求阶乘的和 104
能力拓展 105
综合技能训练 106
综合技能训练一穷举类型的程式设计 106
综合技能训练二递推类型的程式设计 111
小结 113
习题 113
项目实训 115
第6章 套用数组设计程式 117
6.1 数组的引入 117
6.2 一维数组 119
6.2.1 一维数组的定义(先定义后使用) 119
6.2.2 一维数组的初始化 120
6.2.3 一维数组的引用 120
6.3 二维数组 122
6.3.1 二维数组的定义 122
6.3.2 二维数组的初始化 123
6.3.3 二维数组元素的引用 123
6.3.4 多维数组 126
6.4 字元数组 126
6.4.1 字元数组的定义 126
6.4.2 字元数组的初始化 127
6.4.3 字元数组的输入与输出 128
6.4.4 字元串(字元数组)处理函式 128
6.5 数组的套用 131
6.5.1 利用数组求Fibonacci数列的前n项 131
6.5.2 利用数组实现数据排序 132
6.5.3 利用数组处理批量数据 135
6.5.4 利用数组实现矩阵的转置 136
6.5.4 字元数组的套用 137
技能训练一 142
技能训练二 144
小结 144
习题 145
项目实训 146
第7章 套用函式设计程式 148
7.1 函式的引入 148
7.2 函式的定义与调用 149
7.2.1 函式定义的一般形式 150
7.2.2 函式的参数和返回值 150
7.2.3 函式调用的一般方法 152
7.2.4 函式的声明 153
7.3 函式的嵌套调用和递归调用 154
7.3.1 函式嵌套调用——求最大公约数和最低公倍数 154
7.3.2 函式的递归调用 155
7.4 函式套用实例 157
7.4.1 利用函式完成特定功能求值 157
7.4.2 利用函式求阶乘的和 158
技能训练 158
7.4.3 利用数组作为函式参数 159
能力拓展 161
7.4.4 利用函式解决Hanoi(汉诺塔)问题 162
7.5 局部变数、全局变数及其存储 163
7.5.1 变数的作用域 163
7.5.2 变数的存储类别(生存期、生命期) 165
7.6 内部函式和外部函式 167
技能训练一函式的定义 168
技能训练二函式的调用与参数传递 169
技能训练三函式的嵌套调用 171
技能训练四函式的递归调用 173
小结 174
习题 174
项目实训 177
第8章 套用指针编製程序 179
8.1 指针概述 179
8.1.1 记忆体地址与指针 179
8.1.2 变数的直接访问与间接访问 180
8.2 指针变数 180
8.2.1 指针变数的定义及初始化 182
8.2.2 指针变数的引用 183
8.2.3 指针变数的运算 185
8.2.4 指针变数作函式的参数 186
8.3 指针与数组 190
8.3.1 用指向一维数组的指针变数处理数组元素 190
8.3.2 指针与二维数组 193
8.3.3 指向数组指针作函式的参数 194
8.3.4 字元指针与字元串 195
技能训练一 197
8.4 指针与函式 198
8.4.1 函式型指针的定义 198
8.4.2 函式型指针的赋值 199
8.4.3 指针型函式的定义与使用 199
8.5 指针数组 201
8.5.1 指针数组的定义 201
8.5.2 指针数组的初始化 201
8.6 指向指针的指针 202
能力拓展一 204
技能训练一指针变数的定义与引用 205
技能训练二指针对字元数组操作 206
能力拓展二返回指针值的函式 207
小结 209
习题 210
项目实训 212
第 9章 结构体、共同体和枚举类型的套用 213
9.1 结构体类型与结构体变数的定义 213
9.1.1 结构体类型的定义 214
9.1.2 结构体类型变数的定义 215
9.2 结构体变数的引用 217
9.2.1 结构体类型成员的引用 217
9.2.2 结构体类型变数的赋值 217
9.2.3 结构体类型变数的存储 218
9.3 结构体数组 218
9.3.1 结构体类型数组的定义、赋值与引用 218
9.3.2 结构体类型数组的套用 220
9.4 结构体与指针 222
9.4.1 指向结构体变数的指针 222
9.4.2 指向结构体数组的指针 223
9.5 结构体与函式 224
9.6 结构体套用——鍊表 227
9.6.1 动态鍊表基本概念 228
9.6.2 建立鍊表 229
9.6.3 结点查找 230
9.6.4 结点插入 231
9.6.5 结点删除 233
9.7 共同体 234
9.7.1 共同体类型定义 235
9.7.2 共同体类型变数 235
9.7.3 共同体类型成员引用 236
9.7.4 共同体类型特点 236
9.7.5 共同体类型套用举例 236
9.8 枚举类型 237
9.9 用typedef定义类型 238
9.9.1 定义已有类型的别名 238
9.9.2 定义构造类型别名 239
9.9.3 typedef的套用 239
技能训练一结构体类型及变数的套用 240
技能训练二结构体数组的套用 241
技能训练三结构体指针 242
能力拓展结构体套用——鍊表综合实例 242
小结 247
习题 247
项目实训 248
第10章 档案 250
10.1 档案概述 250
10.1.1 档案的概念 250
10.1.2 档案的指针 252
10.1.3 档案的一般操作过程 252
10.2 档案的常用操作 253
10.2.1 档案的打开/关闭函式 253
10.2.2 档案的基本读/写函式 254
10.2.3 档案的格式化读/写函式 255
10.2.4 档案的数据块读/写函式 255
10.2.5 档案的字元串读/写函式 257
10.2.6 档案的整型数据读/写函式 258
10.2.7 档案定位函式 258
10.2.8 档案的检错与处理函式 259
10.2.9 DOS档案调用与删除函式 260
10.3 档案的套用举例 260
技能训练一缓冲型档案类型指针及档案打开与关闭 263
技能训练二缓冲型档案的读/写 263
技能训练三缓冲型档案的定位 264
小结 265
习题 265
项目实训 268
第11章 C语言程式设计套用实例 270
11.1 实现通讯录的管理程式 270
11.1.1 实例说明 270
11.1.2 实例解析 270
11.1.3 通讯录的管理程式 271
11.2 学生成绩管理程式 277
11.2.1 实例说明 277
11.2.2 实例解析 277
11.2.3 学生成绩管理程式 277
11.3 图形与游戏编程实例 285
11.3.1 Turbo C 2.0的图形处理系统 285
11.3.2 Turbo C 2.0图形库函式简介 285
11.3.3 游戏编程——贪吃蛇游戏 289
技能训练编写黑白棋对弈游戏 294
小结 303
习题 304
项目实训 304
综合测试题 305
试卷一 305
试卷二 309
附录 A 常用字元与ASCII代码对照表 314
附录 B C语言的关键字 315
附录 C 运算符的优先权和结合性 316
附录 D 编译预处理命令 318
附录 E 位运算 323
附录 F C语言常见库函式 326
参考文献 333