《C语言实用教程(第2版)》是2014年出版的图书,作者是刘畅。
基本介绍
- 书名C语言实用教程(第2版)
- 译者刘畅
- 出版时间2014年9月
- 千字数486
内容简介
本书主要介绍了C语言的数据类型、运算符和表达式,结构化程式设计语句、数组、函式、指针、複合数据类型、档案、图形库函式等各种的典型内容。全书共10章,前9章分别介绍各种基础知识,通过大量案例和练习让读者掌握所学知识,第10章介绍了两个综合项目,分别是不带图形界面的管理信息系统和带图形界面的迷宫探险游戏。每章课后配有类型丰富的练习题,都是国家二级考试题,并提供了习题参考答案。 本书对C语言各知识的阐述通俗易懂,习题的选择难易适当,题型丰富;对于在TC和VC6.0不同环境下运行结果不同的程式,给出两种环境下的运行结果,方便读者理解,所有程式均已调试运行通过,运行结果为截屏显示。
目录
第1章 C语言概述 1
1.1 程式设计的基本概念 1
1.1.1 程式的概念 1
1.1.2 程式设计的一般过程 2
1.1.3 程式设计的方法 2
1.2 C语言简介 2
1.2.1 C语言的发展 2
1.2.2 C语言的特点 3
1.2.3 C语言的书写规则 3
1.2.4 C程式的几种类型档案 3
1.3 C语言程式案例 4
1.3.1 第一个C语言程式 4
1.3.2 定义符号常量C语言程式 5
1.3.3 有多个函式的C语言程式 5
1.4 算法 6
1.4.1 算法概述 6
1.4.2 算法的图形表示 7
1.5 C语言编程环境 8
1.5.1 turbo C 2.0编程环境 8
1.5.2 Visual C++ 6.0编程环境 9
1.5.3 C/C++程式设计学习与实验系
统编程环境 12
本章小结 14
学生自我完善练习 15
习题1 15
第2章 程式中的数据 17
2.1 数据类型、变数与常量 17
2.1.1 数据类型概述 17
2.1.2 标识符 18
2.1.3 变数的定义、赋值和初始化 19
2.1.4 变数的存储形式 20
2.1.5 整型及整型常量 22
2.1.6 实型及实型常量 23
2.1.7 字元型及字元型常量、字元串
常量 25
2.1.8 符号常量 27
2.2 运算符与表达式 28
2.2.1 算术运算符与算术表达式 29
2.2.2 自增、自减运算符(++、--) 29
2.2.3 赋值运算符与赋值表达式 31
2.2.4 关係运算符与关係表达式 32
2.2.5 逻辑运算符与逻辑表达式 33
2.2.6 位运算符 35
2.2.7 其他运算符 36
2.3 数据类型转换及数据的溢出误差 38
2.3.1 类型转换概述 38
2.3.2 自动类型转换 39
2.3.3 赋值类型转换 40
2.3.4 强制类型转换 40
2.3.5 数据的溢出和误差 40
2.4 数据的输入/输出 42
2.4.1 格式化输出函式printf 42
2.4.2 格式化输入函式scanf 45
2.4.3 字元数据的输入与输出 49
2.5 程式案例 50
2.5.1 典型案例——求直角三角形的
周长和面积 50
2.5.2 典型案例——英文大小写字母的
转换 51
本章小结 52
学生自我完善练习 52
习题2 54
第3章 程式设计语句 58
3.1 程式的语句与结构 58
3.1.1 程式的语句 58
3.1.2 程式的结构 60
3.1.3 如何设计C语言程式 61
3.1.4 顺序结构 61
3.2 选择结构 62
3.2.1 二选一结构—— if语句 63
3.2.2 多选一结构——switch语句 68
3.3 循环结构 70
3.3.1 程式的设计过程 70
3.3.2 当型循环——while循环 71
3.3.3 直到型循环——do-while循环 72
3.3.4 格式化的当型循环——for循环 73
3.3.5 循环的嵌套 75
3.4 break、continue和goto语句 77
3.4.1 break语句 77
3.4.2 continue语句 79
3.4.3 goto语句 79
3.5 程式案例 80
3.5.1 典型案例——求四则运算表达式
的值 80
3.5.2 典型案例——求1+(1+2)+(1+2+3)+
(1+2+3+4)+…+(1+2+…+n)数列
的和 81
3.5.3 典型案例——猜数字游戏 82
本章小结 83
学生自我完善练习 83
习题3 85
第4章 数组 91
4.1 数组概念的引入 91
4.2 一维数组 92
4.2.1 一维数组的定义 92
4.2.2 一维数据的元素引用 92
4.2.3 一维数组的赋值方法 92
4.3 二维数组 94
4.3.1 二维数组的定义 94
4.3.2 二维数据的元素引用 95
4.3.3 二维数组的存储 95
4.3.4 二维数据的赋值方法 96
4.4 字元数组与字元串 97
4.4.1 字元数组的定义、初始化和引用 97
4.4.2 字元串的输入和输出函式 98
4.4.3 字元串函式简介 101
4.5 程式案例 104
4.5.1 典型案例——冒泡法排序 104
4.5.2 典型案例——矩阵的转置 105
4.5.3 典型案例——列印杨辉三角形 106
本章小结 108
学生自我完善练习 108
习题4 111
第5章 函式 115
5.1 模组化的设计思想 115
5.2 函式的定义、调用和函式声明 116
5.2.1 函式的定义 116
5.2.2 函式的调用 117
5.2.3 函式的声明 118
5.3 函式的参数传递 120
5.4 函式的嵌套调用 122
5.5 函式的递归调用 123
5.6 变数的作用域和存储类型 126
5.6.1 变数的作用域 126
5.6.2 变数的生存期 126
5.6.3 变数的存储类型 127
5.7 程式案例 131
5.7.1 典型案例——编写函式实现
求xn 131
5.7.2 典型案例——设计递归函式gcd(x,y),
求x和y的最大公约数 132
5.7.3 典型案例——设计函式验证任意
偶数为两个素数之和 133
5.7.4 典型案例——编写函式实现任意
进制数的转换 135
本章小结 136
学生自我完善练习 136
习题5 139
第6章 指针 145
6.1 地址和指针的关係 145
6.2 指针的定义和赋值 146
6.2.1 指针变数的定义及初始化 146
6.2.2 指针变数的赋值 146
6.3 指针变数的运算 147
6.3.1 运算符和&运算符 147
6.3.2 指针的算术运算和关係运算 147
6.4 指针和数组的关係 149
6.4.1 指针与一维数组 149
6.4.2 指针与字元数组 151
6.4.3 指针与二维数组 153
6.4.4 指针数组 155
6.4.5 指向指针的指针——二级指针 156
6.5 指针在函式中的套用 158
6.5.1 函式的参数是指针 158
6.5.2 函式的返回值是指针 159
6.5.3 指向函式的指针 160
6.5.4 带参数的main函式 162
6.6 程式案例 163
6.6.1 典型案例——用指针实现统计字
符串中各种字元的个数 163
6.6.2 典型案例——多个字元串中找出
最长字元串,并在其他字元串左
边补''号 164
6.6.3 典型案例——将矩阵元素右移,
左侧补0 165
本章小结 167
学生自我完善练习 167
习题6 169
第7章 複合的数据类型 174
7.1 结构概念的引入 174
7.2 结构体的描述与存储 175
7.2.1 结构体的类型定义 175
7.2.2 结构体变数定义及初始化 176
7.2.3 结构体变数的初始化 177
7.2.4 结构体变数和成员的引用及赋值 177
7.2.5 结构变数的空间分配及查看方法 178
7.2.6 结构体类型的嵌套定义 179
7.3 结构体数组和结构体指针的使用 181
7.3.1 结构体数组 181
7.3.2 结构体指针 182
7.4 结构体与函式的关係 184
7.4.1 结构体变数、指针和数组作为函
数参数 184
7.4.2 结构体变数和指针作为函式的返
回值 187
7.5 鍊表 189
7.5.1 鍊表基础知识及动态分配函式 189
7.5.2 鍊表的操作 191
7.6 共用体、枚举和typedef类型定义 195
7.6.1 共用体 195
7.6.2 枚举 199
7.6.3 typedef声明新的类型名 201
7.7 程式案例 203
7.7.1 典型案例——用“结构”统计学
生成绩,对成绩进行排序 203
7.7.2 典型案例——枚举示例,输出52
张扑克牌 205
本章小结 206
学生自我完善练习 206
习题7 208
第8章 档案和编译预处理 214
8.1 档案的概念和基本操作 214
8.1.1 档案的概念 214
8.1.2 档案的打开和关闭 216
8.2 档案的读写 218
8.2.1 字元的读写函式 218
8.2.2 字元串的读写函式 219
8.2.3 数据块的读写函式 221
8.2.4 格式化输入输出档案函式 223
8.3 档案的定位和检测 226
8.3.1 档案的定位 226
8.3.2 档案的检测 229
8.4 编译预处理 229
8.4.1 宏定义 230
8.4.2 档案包含 232
8.4.3 条件编译 233
8.5 程式案例 235
8.5.1 典型案例——档案的字元串读写
程式,实现人员登录功能 235
8.5.2 典型案例——档案中的字数统计
程式 236
本章小结 238
学生自我完善练习 239
习题8 240
第9章 C语言图形程式设计基础 245
9.1 萤幕设定 245
9.1.1 萤幕显示模式与坐标系 245
9.1.2 图形驱动程式与图形模式 247
9.1.3 TC2.0图形库函式 248
9.2 图形处理函式 248
9.2.1 图形系统管理函式 248
9.2.2 萤幕管理和颜色设定函式 249
9.2.3 画点函式 251
9.2.4 绘图函式 252
9.2.5 设定线型函式 254
9.2.6 基本图形的填充及填充方式的
设定 257
9.3 图形操作函式 261
9.3.1 图形视窗操作函式 261
9.3.2 图形模式下的字元 264
9.4 综合程式案例 268
9.4.1 典型案例——画不同粗细、线型
的图形 268
9.4.2 典型案例——运动的小车动画 269
本章小结 271
学生自我完善练习 271
习题9 273
第10章 综合训练项目 274
10.1 不带图形界面综合项目——管理信息
系统 274
10.1.1 项目功能介绍 274
10.1.2 项目系统结构分析 274
10.1.3 各功能模组功能简介 274
10.1.4 源程式及运行结果 276
10.2 图形界面综合项目——迷宫探险
游戏 283
10.2.1 项目功能介绍 283
10.2.2 项目系统结构分析 284
10.2.3 各功能模组功能简介 284
10.2.4 源程式及运行结果 284
附录A 常用字元与ASCII码对照表 294
参考文献 296