当前位置:首页 > 工业技术
C程序设计进阶与实例解析
C程序设计进阶与实例解析

C程序设计进阶与实例解析PDF电子书下载

工业技术

  • 电子书积分:13 积分如何计算积分?
  • 作 者:王金鹏,肖进杰编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2011
  • ISBN:9787302249337
  • 页数:386 页
图书介绍:本书共分三部分:第一部分是基于C编程精要,概括了基本C中最重要的一些知识点,总结了大量的编程技巧和经验,并指出编程中易犯的错误。第二部分讲述了扩展C的一些实用编程知识。第三部分是实例解析,汇集了大量典型实例。
《C程序设计进阶与实例解析》目录

第1篇 基础C编程精要 3

第1章C标准及常用编译器介绍 3

1.1 C标准介绍 3

1.1.1经典C 3

1.1.2 C89 3

1.1.3 C99 3

1.2 Turbo C2.0编程环境及常用操作简介 4

1.2.1 TC的安装和配置 4

1.2.2 TC的调用 4

1.2.3在TC中编辑、运行程序并查看结果 5

1.2.4在DOS命令行中运行程序 6

1.2.5在TC中调试程序 6

1.2.6多文件程序的创建和运行 7

1.3 Visual C++ 6.0编程环境及常用操作简介 8

1.3.1工程及源文件的建立 8

1.3.2程序的编译、连接和运行 10

1.3.3程序的调试 11

习题1 12

第2章 输入输出 13

2.1 printf()和scanf()的常见问题 13

2.1.1 printf()函数 13

2.1.2 scanf()函数 14

2.2输入数据时的回车换行问题 16

2.3输出时常用的几个函数 17

2.3.1 clrscr() 17

2.3.2 getche()和getch() 18

2.4输入输出重定向 19

习题2 21

第3章 程序的流程控制 22

3.1选择结构 22

3.1.1 if语句和if-else语句 22

3.1.2嵌套的if语句 23

3.1.3 if语句常见错误 25

3.1.4 if语句中的短路效应 29

3.1.5 switch语句 29

3.1.6选择结构程序举例 32

3.2循环结构 34

3.2.1三种循环语句 34

3.2.2计数器控制循环和条件控制循环 35

3.2.3 break和continue 37

3.2.4循环结束时循环变量的值 38

3.2.5循环举例 39

习题3 42

第4章 数组与指针 44

4.1数组的由来及数组的元素 44

4.1.1一维数组的由来及一维数组的元素 44

4.1.2多维数组的由来及多维数组的元素 44

4.1.3使用数组时的注意事项 45

4.2指针变量及其应用 45

4.2.1指针变量的定义、赋值和使用 46

4.2.2指针变量的类型及运算 48

4.3用数组名访问下标变量 49

4.3.1数组名的指针类型 49

4.3.2用数组名表示数组元素 50

4.4用指针变量处理数组 51

4.4.1用指向变量的指针变量处理数组 51

4.4.2用指向数组的指针变量处理数组 54

4.4.3用指针变量处理数组时的类型问题 55

4.5指针变量的使用场合及用法 56

4.5.1处理简单变量 56

4.5.2处理下标变量 57

习题4 59

第5章 函数 61

5.1函数的定义 61

5.1.1函数定义的格式 61

5.1.2函数的返回类型 61

5.1.3函数参数的设置 64

5.2 数的调用 65

5.2.1函数调用前的声明 65

5.2.2函数调用的方式 67

5.3函数调用时的参数传递 68

5.4地址作参数 69

5.4.1什么时候传地址 69

5.4.2变量的地址作参数 70

5.4.3数组名作参数 71

5.4.4不再用全局变量 74

5.4.5地址作参数是单向传递还是双向传递 75

5.5递归函数 77

5.5.1递归的条件 77

5.5.2递归还是迭代 78

5.6函数编程的常见错误 79

习题5 79

第6章 文件 81

6.1文件的概念和文件的种类 81

6.1.1文件的范畴 81

6.1.2文件中存储数据的两种方式 81

6.1.3文件的种类 82

6.1.4文件操作的两个层面及缓冲区的概念 82

6.2文件类型指针 83

6.3文件的打开和关闭 84

6.3.1文件的打开 84

6.3.2文件的关闭 88

6.4文件的读写 89

6.4.1常用读写函数 89

6.4.2读写指针的移动和定位 90

6.4.3两个与当前位置指针有关的函数 90

6.4.4文件读写的例子 92

习题6 94

第7章 变量和字符处理的几个问题 95

7.1变量及其地址 95

7.1.1变量的概念及其地址 95

7.1.2同名变量的分辨 96

7.1.3变量赋初值及初值问题 97

7.2实型变量的存储及常见问题 98

7.2.1实型变量的存储方式 98

7.2.2实型变量常见的使用问题 99

7.3字符处理的几个问题 100

7.3.1结束标志用空字符还是换行符 101

7.3.2循环次数是数组大小还是实际字符个数 101

习题7 102

第2篇 扩展C编程技术 105

第8章 内存管理机制与TC编译模式 105

8.1寄存器和伪变量 105

8.1.1微处理器中的寄存器 105

8.1.2段寄存器及其用途 106

8.1.3伪变量 106

8.2内存的寻址模式 107

8.2.1段式内存管理机制和实模式寻址 107

8.2.2保护模式寻址 108

8.2.3默认的段和偏移寄存器 108

8.2.4近程指针与远程指针 109

8.2.5与地址操作有关的几个函数(宏) 110

8.3 TC的编译模式 111

8.3.1微模式(Tiny) 111

8.3.2小模式(Small) 112

8.3.3中模式(Medium) 112

8.3.4紧凑模式(Compact) 112

8.3.5大模式(Large) 112

8.3.6巨模式(Huge) 112

习题8 112

第9章BIOS和DOS调用 113

9.1概述 113

9.2中断和中断向量表 114

9.2.1中断 114

9.2.2中断向量表 114

9.3 BIOS调用 115

9.3.1 BIOS调用简介 115

9.3.2 BIOS调用的方法和例子 115

9.4 DOS调用 117

9.4.1 DOS调用简介 117

9.4.2 DOS调用的方法和例子 118

9.5 BIOS和DOS系统调用函数 120

9.5.1 int86() 120

9.5.2 int86x() 122

9.5.3 intdos() 123

9.5.4 intdosx() 124

9.5.5 intr() 124

习题9 125

第10章I/O接口的输入输出 126

10.1 I/O端口地址及编址方 126

10.1.1 I/O端口的地址 126

10.1.2 I/O端口的编址 126

10.2 C语言用于I/O接口输入输出的函数 127

10.2.1接口输入函数 127

10.2.2接口输出函数 128

10.3 I/O接口输入输出举例 128

习题10 132

第11章 中断服务程序 133

11.1硬中断和软中断 133

11.1.1硬中断 133

11.1.2软中断 133

11.2中断向量表的写入 133

11.3中断服务的实现 134

11.3.1中断服务程序的编写 134

11.3.2中断服务程序的安装 135

11.3.3中断服务程序的激活 135

11.4中断服务程序举例 137

习题11 140

第12章C作图与图形处理 141

12.1图形系统的初始化及基本框架 141

12.1.1初始化图形系统 141

12.1.2图形系统的关闭以及两种显示方式的转换 142

12.1.3程序的基本框架及实例 143

12.2图形系统中的像素与坐标 144

12.2.1像素及坐标 144

12.2.2像素函数及像素的颜色 144

12.3常用图形函数 145

12.3.1画点函数 145

12.3.2有关画图坐标位置的函数 145

12.3.3画线函数 145

12.3.4画圆、椭圆和扇形函数 146

12.3.5画矩形和条形图函数 146

12.3.6颜色控制函数 147

12.3.7线形控制函数 147

12.3.8填充函数以及与填充有关的函数 148

12.4图形方式下的文本输出函数 149

12.5屏幕操作函数及动画基本知识 150

12.5.1常用的屏幕操作函数 150

12.5.2 C语言动画设计的常用方法 151

12.5.3动画示例 152

12.6 VRAM的读写 153

12.6.1屏幕图形与VRAM的关系 153

12.6.2 VGA视频存储器的位面结构 154

12.6.3将VRAM位面信息存入文件 154

12.6.4将文件图像信息写入VRAM位面 155

习题12 157

第13章 键盘和鼠标操作 158

13.1键盘操作 158

13.1.1键盘的工作原理 158

13.1.2键盘缓冲区 158

13.1.3键盘处理函数 159

13.2鼠标操作 160

13.2.1鼠标的INT 33H功能调用 160

13.2.2鼠标主要操作函数 162

13.2.3改变鼠标形状 164

13.2.4鼠标操作举例 166

习题13 169

第14章 汉字的显示与放大 170

14.1汉字的编码 170

14.1.1区位码 170

14.1.2国标码 170

14.1.3机内码 171

14.1.4字形码 171

14.1.5地址码 172

14.2用作图方式显示和放大汉字 172

14.2.1汉字的显示 172

14.2.2汉字的放大 175

14.3直接写VRAM法显示汉字 176

14.3.1利用定序器直接写VRAM 177

14.3.2用方式寄存器和位屏蔽寄存器直接写VRAM 180

习题14 182

第15章 数据结构基础 183

15.1线性表 183

15.1.1线性表的概念 183

15.1.2线性表的存储结构 183

15.2顺序表的操作 183

15.2.1空顺序表的建立 183

15.2.2求顺序表中某元素的序号 184

15.2.3顺序表元素的插入 184

15.2.4顺序表元素的删除 185

15.3链表及操作 185

15.3.1线性链表的表示 185

15.3.2线性链表的操作 186

15.3.3循环链表 189

15.3.4双向链表 189

15.4栈 190

15.4.1栈的概念 190

15.4.2栈的实现 190

15.5队列 194

15.5.1队列的概念 194

15.5.2队列的实现和操作 194

习题15 196

第3篇 实例解析 199

第16章 基本编程实例 199

实例1利用输入重定向从文件中读数据 199

实例2火车托运费的计算 200

实例3找小偷 201

实例4判断整数能被3、5、7中的哪些数整除 202

实例5找假货 203

实例6计算某天是一年中的第几天 204

实例7国民生产总值多少年翻番 205

实例8兑换硬币 206

实例9里程碑上的对称数 206

实例10辗转赋值法求表达式的值 208

实例11随机数的生成 208

实例12打印魔方阵 210

实例13猜数游戏 212

实例14二维数组的排序输出 212

实例15寻找假币 213

实例16打印乘法口诀 215

实例17计算矩阵相乘 215

实例18向排好序的数组中插入数据 216

实例19用数组作计数器 217

实例20判断字符串是否回文 219

实例21找素数 219

实例22字符串转换为实数 220

实例23任意进制数的转换 222

实例24利用位运算求任意整数的原码或补码 222

实例25字符串逆置 223

实例26用递归法逆序输出字符串 224

实例27用递归法对整型数组排序 224

实例28向主调函数中的局部变量存数据 225

实例29通过指针变量使函数“返回”两个值 226

实例30利用位运算对字母进行大小写转换 226

实例31用结构体处理学生成绩 227

实例32报数游戏 229

实例33带参数的main函数 230

实例34时钟程序 230

实例35简单的计算器(一) 232

实例36简单的计算器(二) 234

第17章 算法与数据结构实例 238

实例1冒泡法排序 238

实例2选择法排序 239

实例3插入排序 240

实例4储油问题 241

实例5 0-1背包问题 242

实例6顺序表的插入和删除 245

实例7链表操作(一) 247

实例8链表操作(二) 252

实例9链表的逆置 254

实例10约瑟夫环 255

实例11双链表的操作 258

实例12多项式的表示和计算 261

实例13十进制数换为二进制 264

实例14检查括号配对 266

实例15八皇后问题 268

实例16迷宫问题 271

实例17骑士巡游问题 273

实例18农夫过河问题 276

实例19表达式计算 281

第18章 趣味数学和数值计算实例 288

实例1马克思手稿中的数学题 288

实例2配对新郎和新娘 289

实例3分糖果 290

实例4波瓦松的分酒问题 292

实例5求π的近似算法 293

实例6角谷猜想 295

实例7四方定理 296

实例8卡布列克常数 297

实例9求解线性方程 299

实例10求定积分 303

实例11超长整数的加法 304

第19章 图形编程实例 310

实例1画点及画线函数 310

实例2绘制圆、圆弧和椭圆 311

实例3画矩形和条形的函数 312

实例4设置背景色和前景色 312

实例5设置线条类型 313

实例6设置填充类型和填充颜色 313

实例7图形方式下输出文本 314

实例8绘制时钟 315

实例9跳动小球 316

实例10用直方图显示学生成绩分布 318

实例11用饼状图显示比例 320

实例12相向运动的球 322

实例13模拟满天星 322

实例14正弦曲线 323

实例15卫星环绕地球运动 324

实例16按钮的制作 326

实例17火箭发射演示 329

实例18火焰动画制作 331

第20章 系统和文件操作实例 334

实例1获取并修改当前驱动器 334

实例2建立目录 335

实例3选择当前目录 335

实例4删除目录 336

实例5获得当前目录 337

实例6建立文件 337

实例7打开文件 338

实例8读文件 340

实例9写文件 341

实例10关闭文件 342

实例11删除文件 342

实例12文件改名 343

实例13读取CMOS信息 344

实例14文件连接 346

实例15 文件读写操作 346

第21章 趣味游戏实例 348

实例1俄罗斯方块 348

实例2贪吃蛇游戏 350

实例3潜艇大战 351

实例4搬运工 353

实例5商人过河游戏 355

实例6五子棋 357

实例7扫雷 358

第22章 综合应用实例 361

实例1数据文件的读取及图形显示 361

实例2数独(sudoku)游戏的求解 367

实例3通讯录管理系统 371

附录A常用的视频BIOS调用 375

附录B INT 21H常用功能调用一览表 380

附录C ASCII码表 385

参考文献 386

相关图书
作者其它书籍
返回顶部