从C语言基础高级技术,全面、深入讲解C程序设计的精髓,通过实例,层层深入,彻底攻克C程序设计的重点和难点知识。
本书特色:
从入门到精通:上篇介绍C语言基础,下篇介绍C语言高级编程及技巧。
适用双操作系统:适用于Windows环境和Linux环境。
重点突出:重点介绍了指针、数据加密、压缩、控制鼠标和绘制图形等重点内容。
实例丰富,注重实践:穿插386个实例进行讲解,实践性强,可快速上手。

内容推荐

C语言从产生到现在,已经成为最重要和最流行的编程语言之一。本书分上下两篇,分别介绍了C语言的基础和高级程序设计技巧。
  上篇共16章,主要介绍C语言的语法基础,包括C语言概述,C程序的组成,C语言开发环境,数据的表示,表达式、运算符和语句,格式化输入/输出,分支结构程序设计,循环结构程序设计,使用数组,使用函数,模块化程序设计方法,使用指针,结构、联合和枚举,位运算和位域,文件输入/输出,预处理等内容。
  下篇共10章,主要介绍C语言高级程序设计,包括处理字符串,数学函数和时间函数,常用算法应用,存储管理,控制鼠标,数据加密,数据压缩,图形编程,调用汇编程序,程序设计实例等内容。
  本书内容丰富、结构清晰、实例代码讲解详尽,可以作为C语言、Java语言初学者的入门教材,也可作为C程序员的参考手册,同时,还可作为大中专院校学生及电脑培训班的参考书。
  本书附赠DVD光盘1张,内容包括本书所有章节实例,入门视频以及长达21小时的C语言学习视频教学课件。

目录

第1篇 C语言基础
第1章 C语言概述
第2章 C程序的组成
第3章 C语言开发环境
第4章 数据的表示
第5章 表达式、运算符和语句
第6章 格式化输出/输入
第7章 分支结构程序设计
第8章 循环结构程序设计
第9章 使用数组
第10章 使用函数
第11章 模块化程序设计方法
第12章 使用指针
第13章 结构、联合和枚举
第14章 位运算和位域
第15章 文件输入/输出
第16章 预处理
第2篇 C语言高级程序设计
第17章 处理字符串
第18章 数学函数和时间函数
第19章 常用算法应用
第20章 存储管理
第21章 控制鼠标
第22章 数据加密
第23章 数据压缩
第24章 图形编程
第25章 调用汇编程序
第26章 程序设计实例

实例目录:

【程序1-1】第一个c语言程序 9
【程序2-1】c语言程序组成示例 14
【程序3-1】欢迎程序 25
【程序4-1】符号常量示例 40
【程序4-2】摄氏温度转换为华氏温度 44
【程序4-3】整型数据所占内存空间的大小 46
【程序4-4】整型数据输出示例 51
【程序4-5】整数转换为十六进制和八进制示例 52
【程序4-6】使用转义字符示例 55
【程序4-7】字符型数据输出示例 56
【程序4-8】实数类型占用的字节示例 57
【程序4-9】实型数据输出示例1 59
【程序4-10】实型数据输出示例2 60
【程序4-11】实型数据输出示例3 61
【程序4-12】char类型和int类型之间的转换示例 62
【程序4-13】将float转换为int类型示例 62
【程序4-14】强制类型转换示例 63
【程序4-15】复数操作示例 64
【程序5-1】输出逗号表达式的结果 67
【程序5-2】十进制数转换为二进制数示例(不使用循环) 69
【程序5-3】十进制数转换为二进制数示例(使用循环) 70
【程序5-4】自增运算符的后缀模式和前缀模式 71
【程序5-5】使用复合赋值运算符 75
【程序5-6】关系运算符示例 76
【程序5-7】逻辑运算符示例 77
【程序5-8】条件运算符示例 79
【程序5-9】使用sizeof运算符 80
【程序6-1】printf函数示例 89
【程序6-2】printf函数不同格式串输出示例 90
【程序6-3】printf函数输出最小宽度控制示例 91
【程序6-4】printf函数输出精度控制示例 92
【程序6-5】printf函数输出字符示例 94
【程序6-6】printf函数输出整数示例 95
【程序6-7】printf函数输出实数示例 96
【程序6-8】printf函数输出字符串示例 97
【程序6-9】printf函数动态设置输出宽度和精度示例 98
【程序6-10】printf函数的返回值示例 99
【程序6-11】printf函数输出列表示例1 100
【程序6-12】printf函数输出列表示例2 100
【程序6-13】scanf函数示例 102
【程序6-14】scanf函数不能控制输入精度示例 105
【程序6-15】scanf函数使用非格式字符示例 106
【程序6-16】scanf函数返回值示例 107
【程序6-17】getchar函数示例 108
【程序6-18】getch函数示例 109
【程序6-19】gets函数示例 109
【程序6-20】putch函数示例 110
【程序6-21】puts函数示例 111
【程序7-1】用if语句求最大数 114
【程序7-2】用if语句对两个数排序 115
【程序7-3】用if else语句对两个数排序 116
【程序7-4】检查输入字符类型示例(if语句嵌套) 119
【程序7-5】三个数排序示例(if语句嵌套方法) 120
【程序7-6】三个数排序示例(交换方法) 121
【程序7-7】检查输入字符类型示例(if else if语句) 123
【程序7-8】整数转换为中文星期名称(switch语句) 125
【程序7-9】switch语句多重标号示例(错误结果) 126
【程序7-10】分档计算运费(switch语句) 127
【程序8-1】求连续自然数之和示例(while语句,计数器递增) 132
【程序8-2】求连续自然数之和示例(while语句,计数器递减) 134
【程序8-3】求连续自然数之和示例(优化后的代码) 135
【程序8-4】求连续自然数之和示例(for语句) 139
【程序8-5】省略初始化部分的for循环示例 139
【程序8-6】改变for循环的循环变量递增方式示例 141
【程序8-7】用for循环输出指定期间的字符示例 142
【程序8-8】用for循环输出ascii代码表示例 143
【程序8-9】用while循环显示菜单示例 144
【程序8-10】用do while循环显示菜单示例 146
【程序8-11】循环嵌套输出示例 148
【程序8-12】九九乘法表 150
【程序8-13】九九乘法表示例(优化后的代码) 151
【程序8-14】百钱买百鸡示例(循环嵌套) 152
【程序8-15】百钱买百鸡代码优化示例 153
【程序8-16】用break语句跳出循环示例 155
【程序8-17】用continue语句跳过循环部分语句示例 156
【程序8-18】用goto语句编写循环代码示例 157
【程序9-1】统计学生成绩示例(不使用数组) 159
【程序9-2】统计学生成绩示例(使用数组) 160
【程序9-3】使用变长数组示例(c99标准) 163
【程序9-4】越界访问数组示例 166
【程序9-5】输出未初始化的数组元素示例 167
【程序9-6】按线性方式输出二维数组元素示例 170
【程序9-7】输出数组各元素的内存地址示例 171
【程序9-8】字符数组示例 175
【程序9-9】输出字符数组示例 177
【程序9-10】字符串反转示例 179
【程序9-11】输出数组中的最大数示例 180
【程序9-12】数组元素排序示例 181
【程序10-1】求最大值函数示例 185
【程序10-2】函数返回值示例 189
【程序10-3】函数返回值示例 191
【程序10-4】函数的值调用示例 193
【程序10-5】函数的引用调用示例 194
【程序10-6】通过指针传递参数示例 195
【程序10-7】函数的数组调用示例 197
【程序10-8】main函数的参数示例 199
【程序10-9】输出用户输入的命令行参数示例 200
【程序10-10】函数嵌套调用示例 204
【程序10-11】函数递归调用示例 205
【程序10-12】汉诺塔(递归程序示例) 208
【程序11-1】引用多个源程序文件示例 213
【程序11-2】局部变量示例 217
【程序11-3】复合语句中的变量示例 219
【程序11-4】全局变量示例1 220
【程序11-5】全局变量示例2 221
【程序11-6】同名全局变量和局部变量示例 222
【程序11-7】自动变量示例 224
【程序11-8】寄存器变量示例 226
【程序11-9】外部变量示例 226
【程序11-10】静态变量示例 228
【程序12-1】查看变量地址示例 232
【程序12-2】错误初始化指针示例 235
【程序12-3】取地址运算符和取内容运算符示例 236
【程序12-4】用指针引用变量示例 237
【程序12-5】通过指针交换数据示例 237
【程序12-6】指针和数组地址之间的关系示例 240
【程序12-7】用指针操作数组元素示例 242
【程序12-8】将指针作为数组名使用示例 243
【程序12-9】输出数组的地址和长度示例 245
【程序12-10】输出数组各维的地址和长度示例 246
【程序12-11】输出数组各元素的地址和长度示例 247
【程序12-12】初始化二维数组示例 248
【程序12-13】用指针变量初始化二维数组示例 249
【程序12-14】用指针变量指向数组的一行数据示例 251
【程序12-15】一维数组作函数参数示例 253
【程序12-16】使用指向一维数组的指针变量传递参数示例 254
【程序12-17】字符串数组、字符串指针使用示例 257
【程序12-18】字符串指针作函数参数示例 258
【程序12-19】用指针数组指向二维数组每一行示例 261
【程序12-20】二维数组指针示例 262
【程序12-21】用指针数组处理字符串示例 263
【程序12-22】指针数组作函数参数示例 264
【程序12-23】指向指针的指针示例 267
【程序12-24】用二级指针操作一维数组示例 268
【程序12-25】用二级指针操作二维数组示例 270
【程序12-26】用二级指针作函数参数示例 271
【程序12-27】指针型函数示例 272
【程序12-28】指向函数的指针示例1 274
【程序12-29】指向函数的指针示例2 275
【程序12-30】指针和const的关系示例 278
【程序13-1】结构和结构变量示例 283
【程序13-2】嵌套结构成员赋值、输出示例 286
【程序13-3】初始化结构示例 289
【程序13-4】结构数组示例 291
【程序13-5】用指针处理结构数组示例 294
【程序13-6】传递结构变量的值到函数示例 295
【程序13-7】结构中嵌套联合类型示例1 298
【程序13-8】结构中嵌套联合类型示例2 299
【程序14-1】位或运算示例 308
【程序14-2】位反运算示例 308
【程序14-3】位运算用途示例 310
【程序14-4】位域示例 313
【程序14-5】二进制转换(位域与联合的使用)示例 314
【程序15-1】保存用户输入内容示例 322
【程序15-2】从文件中读取字符示例 324
【程序15-3】合并文件示例 325
【程序15-4】向文件中增加内容示例 326
【程序15-5】将文件内容显示到屏幕示例 328
【程序15-6】格式化文件数据示例 329
【程序15-7】读取格式化文件数据示例 330
【程序15-8】将整型数据写入文件示例 332
【程序15-9】从文件中读取整型数据示例 333
【程序15-10】保存二进制文件示例 334
【程序15-11】读二进制文件示例 336
【程序15-12】获取文件位置指针示例 338
【程序15-13】重置文件位置指针示例 339
【程序15-14】设置文件位置指针示例 341
【程序15-15】刷新标准输入流stdin缓冲区示例 343
【程序15-16】重定向输出到显示器示例 344
【程序15-17】重定向输出到文件示例 345
【程序15-18】重命名文件示例 346
【程序15-19】删除文件示例 347
【程序15-20】复制文件示例 348
【程序15-21】临时文件使用示例 349
【程序16-1】无参数宏示例 353
【程序16-2】操作符#示例 355
【程序16-3】操作符##示例 356
【程序16-4】条件编译示例 358
【程序16-5】条件编译嵌套示例 359
【程序16-6】使用预定宏名示例 361
【程序16-7】#line命令示例 361
【程序16-8】内联函数示例 363
【程序17-1】字符串动态存储示例 367
【程序17-2】字符检测函数示例 368
【程序17-3】字符串长度函数示例 369
【程序17-4】查找字符位置示例 370
【程序17-5】查找相同字符示例 372
【程序17-6】查找包含字符位置示例 373
【程序17-7】查找包含字符示例 374
【程序17-8】查找子串示例 375
【程序17-9】比较字符串示例 376
【程序17-10】比较部分字符串示例 378
【程序17-11】忽略大小写比较字符串示例 379
【程序17-12】连接字符串示例 381
【程序17-13】连接部分字符示例 382
【程序17-14】复制字符串示例 383
【程序17-15】复制部分字符示例 384
【程序17-16】用dup函数复制字符串示例 385
【程序17-17】大小写字符转换示例 386
【程序17-18】字符串大小写转换示例 387
【程序17-19】字符串与数值转换示例 388
【程序17-20】字符串反转示例 389
【程序17-21】替换字符示例 390
【程序17-22】分解字符串示例 391
【程序18-1】三角函数sin示例 394
【程序18-2】双三曲函数示例 395
【程序18-3】exp函数示例 396
【程序18-4】用frexp函数分解尾数和指数示例 396
【程序18-5】用ldexp函数组合实数示例 397
【程序18-6】ceil和floor函数示例 398
【程序18-7】modf函数示例 399
【程序18-8】获取日期时间示例 400
【程序18-9】转换日期时间表示形式示例 401
【程序18-10】秒数转换为对应的日期示例 402
【程序18-11】日期转换为秒数示例 403
【程序18-12】日期转换为字符串示例 404
【程序18-13】显示当前日期示例 407
【程序19-1】冒泡排序法示例 409
【程序19-2】选择排序法示例 411
【程序19-3】插入排序法示例 411
【程序19-4】shell排序法示例 412
【程序19-5】快速排序法示例 413
【程序19-6】字符串排序示例 414
【程序19-7】顺序查找示例 416
【程序19-8】折半查找示例 418
【程序19-9】队列操作示例 419
【程序19-10】堆栈操作示例 423
【程序19-11】链表操作示例 425
【程序20-1】不同类变量分配内存空间示例 433
【程序20-2】用malloc函数动态分配内存创建动态数组示例 435
【程序20-3】用realloc函数动态分配内存示例 437
【程序20-4】用free函数释放分配内存示例 439
【程序20-5】内存分配丢失示例 440
【程序20-6】分配所有可用内存示例 441
【程序21-1】头文件,包含控制鼠标的函数原型定义 445
【程序21-2】控制鼠标的函数代码 446
【程序21-3】初始化鼠标函数代码 447
【程序21-4】复位鼠标函数代码 447
【程序21-5】移动鼠标函数代码 448
【程序21-6】显示鼠标指针函数代码 448
【程序21-7】隐藏鼠标指针函数代码 449
【程序21-8】获取按下按钮信息函数代码 450
【程序21-9】获取释放按钮信息函数代码 450
【程序21-10】获取鼠标状态信息函数代码 451
【程序21-11】获取鼠标指针位置信息函数代码 451
【程序21-12】保存鼠标指针位置函数代码 452
【程序21-13】捕获鼠标或键盘按钮函数代码 453
【程序21-14】判断鼠标指针区域代码 454
【程序21-15】测试鼠标库函数的代码 455
【程序22-1】换位加密法示例 459
【程序22-2】替换加密法示例 463
【程序22-3】位加密法示例 465
【程序23-1】lzw压缩算法头文件 474
【程序23-2】压缩函数代码 475
【程序23-3】搜索哈希表函数代码 477
【程序23-4】输出压缩数据函数代码 477
【程序23-5】解压缩函数代码 478
【程序23-6】输入编辑数据函数代码 480
【程序23-7】解压函数代码 480
【程序23-8】压缩主程序代码 481
【程序24-1】设置显示模式函数代码 486
【程序24-2】绘制点的函数代码(调用bios功能) 488
【程序24-3】绘制点的函数代码(直接存取显示内存) 489
【程序24-4】读取点信息的函数代码 489
【程序24-5】绘制直线的函数代码 490
【程序24-6】绘制矩形的函数代码 491
【程序24-7】绘制实心矩形的函数代码 491
【程序24-8】绘制圆的函数代码 492
【程序24-9】绘制实心圆的函数代码 493
【程序24-10】绘制多边形的函数代码 493
【程序24-11】绘制随机多边形的代码 494
【程序24-12】复制图形的函数代码 494
【程序24-13】移动图形的函数代码 495
【程序24-14】保存图形的函数代码 495
【程序24-15】载入图形的函数代码 496
【程序24-16】测试绘制函数的代码 497
【程序25-1】将c语言编译为汇编程序示例(c源程序) 500
【程序25-2】将c语言编译为汇编程序示例(汇编程序) 500
【程序25-3】简单内联汇编示例 503
【程序25-4】包含输入部分的内联汇编示例 504
【程序25-5】输出字符串的内联汇编示例 505
【程序25-6】读取寄存器值的内联汇编示例 506
【程序25-7】c语言函数调用约定示例 507
【程序25-8】add函数(c源程序) 508
【程序25-9】add函数编译后的汇编程序 508
【程序25-10】两数相乘的汇编程序示例 509
【程序25-11】c语言调用汇编程序示例… 510

截图:



欢迎投稿 职场/创业方向. 邮箱wangfzcom(AT)163.com:王夫子社区 » C语言开发技术详解 (戴建华) PDF扫描版70M PDF 免费下载

点评 0

评论前必须登录!

登陆 注册