• C程序设计伴侣帮你更好地理解谭浩强老师的那本书以及更多
21年品牌 40万+商家 超1.5亿件商品

C程序设计伴侣帮你更好地理解谭浩强老师的那本书以及更多

12 2.4折 49 九五品

仅1件

江苏南京
认证卖家担保交易快速发货售后保障

作者陈良乔 著

出版社人民邮电出版社

ISBN9787115290953

出版时间2012-10

版次1

装帧平装

开本16开

纸张胶版纸

页数315页

字数99999千字

定价49元

上书时间2024-03-23

天舞宝輪

已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:九五品
商品描述
基本信息
书名:C程序设计伴侣帮你更好地理解谭浩强老师的那本书以及更多
定价:49.00元
作者:陈良乔 著
出版社:人民邮电出版社
出版日期:2012-10-01
ISBN:9787115290953
字数:534000
页码:315
版次:1
装帧:平装
开本:16开
商品重量:
编辑推荐
它几乎是每一位程序员的启蒙读物!   它的超过1100万册!   它就是众所周知的《C程序设计》——   谭浩强老师的经典著作!   然而,它也有一些不足之处,   这使得20年来,关于它的争议没有停止过,   20年来,它,一直是孤独的。   直到,《伴侣》的出现!   《伴侣》让“它”变得更完整,   我们的目的是让《C程序设计》读者的困惑和遗憾   在这本《伴侣》中得到解决。   学习《C程序设计》,必配《C程序设计伴侣》!   咖啡,加牛奶,味道更香醇  
内容提要
《C程序设计伴侣:帮你更好地理解谭浩强老师的那本书以及更多!》是谭浩强老师经典的《C 程序设计》(以下简称原书)一书的伴侣,是对原书有益且神奇的补充。本书对原书中没有讲透彻的没有讲明白的那些概念、知识和技术点进行了深刻却易于理解的讲解,并把原书中遗漏的、忽视的,甚至是多少有点问题的,以及那些未曾涉及的但作为初学者或称为未来的程序员应该知道的基础知识、编程素养、编程思想,以及业内行规一并讲解清楚了。    较之原书,这本伴侣更加的有趣、更加的通俗易懂。在内容上,较之原书,这本伴侣更加的深刻、更加的透彻,具有更加广阔的视野和更加深厚的内涵。在实用性上,这本伴侣较之原书更加的实战,可以让你养成良好且符合业界标准的编程习惯和编程思想,为今后的继续前行打下必要而的基础。
目录
注:浅灰色的目录标题是本书所对应的谭浩强《C程序设计》(第四版)中的相应章节的目录标题。章 C语言背后的故事 程序设计和C语言1.1 计算机程序是什么 什么是计算机程序1.2 计算机语言又是什么 什么是计算机语言1.2.A 如何用计算机语言来表达一个程序1.2.B 从汇编语言到高级语言--风格各异的计算机语言1.3 C语言真正的特点及其演变 C语言的发展及其特点1.3A C语言与C++不得不说的那点事1.3B 我们为什么现在还要学习C语言1.4 次的亲密接触--Hello,World 简单的C语言程序1.4.A 简单的C语言程序背后的故事--它的汇编代码是如何被执行的1.4.1 比简单再复杂一点点 简单的C语言程序举例1.4.2 程序的三要素:数据输入、数据处理与数据输出 C语言程序的结构1.4.B 编码规范--如何写出简洁优美的代码1.5 C程序开发的两个循环和四个步骤 运行C程序的步骤与方法1.5A 工欲善其事,必先利其器--使用Eclipse编写C程序1.5B 使用GCC编译C语言程序1.6 程序设计的瀑布模型 程序设计的任务第2章 解决问题的思路--算法 算法--程序的灵魂2.1 先有算法,后有程序 什么是算法2.1A 算法的时间复杂度和空间复杂度2.2 如何将抽象的算法实现为具体的代码 简单的算法举例2.3 算法的特征--简单,没啥可说的 算法的特性2.4 一群聪明的程序员是怎么把事情搞砸的 怎样表示一个算法2.5 掌握结构化的程序设计 结构化程序设计方法2.5A 结构化程序设计的基本思想、步骤与流程2.5B“自顶向下,逐步求精”:把“问题”变成“程序”的魔法第3章 顺序结构的程序设计 简单的C程序设计--顺序程序设计3.1 顺序结构程序举例--简单,没啥可说的 顺序程序设计举例3.1A 如何理解程序的执行顺序3.2 如何描述数据,如何对数据进行运算 数据的表现形式及其运算3.2.1 常量、变量、常变量及符号 常量和变量3.2.2 数据类型及举例 数据类型3.2.3 整型数据及如何选择合适的类型 整型数据3.2.4 字符型数据及举例 字符型数据3.2.5 浮点型数据及比较大小时的特别注意 浮点型数据3.2.6 如何强制指定常量的数据类型 怎样确定常量的类型3.2.7 运算符和表达式及使用经验和建议 运算符和表达式3.3 基本程序单位--语句 C语句3.3.1 C语言的语句分类 C语句的作用和分类3.3.2 赋值语句及其使用注意 基本的语句--赋值语句3.4 数据从哪里来,又到哪里去? 数据的输入输出3.4.1 输入输出举例--简单,没啥可说的 输入输出举例3.4.2 输入输出的概念--简单,没啥可说的 有关数据输入输出的概念3.4.3 使用printf函数进行格式化数据输出 用printf函数输出数据3.4.4 使用scanf函数进行格式化数据输入 用scanf函数输入数据3.4.5 单字符的输入输出及敏感信息输入函数 字符数据的输入输出3.4.5A 字符串数据的简单输入输出第4章 选择结构的程序设计 选择结构程序设计4.1 选择结构和条件判断--交通灯例子 选择结构和条件判断4.2-4.3 使用if语句实现选择结构4.4 逻辑运算符及表达式 逻辑运算符和逻辑表达式4.4.1 逻辑运算符及优先级 逻辑运算符及其优先次序4.4.1A 合理的出错处理--让你的程序更受欢迎4.4.2 逻辑表达式及其使用注意 逻辑表达式4.4.3 逻辑型变量--时控灯例子 逻辑型变量4.5 条件运算符及表达式 条件运算符和条件表达式4.6 条件结构的嵌套--拜金女择偶例子 选择结构的嵌套4.7 使用switch语句实现多分支选择结构--看天穿衣例子 用switch语句实现多分支选择结构4.8 综合运用--猜数字游戏 选择结构程序综合举例第5章 循环结构的程序设计 循环结构程序设计5.1 为什么需要循环控制--简单,没啥可说的 为什么需要循环控制5.1A 循环结构的四个要素5.2 如果条件满足,就一直做某事的while 用while语句实现循环5.3 一直做某事,直到条件不满足的do while 用do while语句实现循环5.4 完备复杂的循环语句for 用for语句实现循环5.5 更复杂的数据处理--嵌套的循环 循环的嵌套5.6 如何选择合适的循环结构 几种循环的比较5.7 改变循环的状态 改变循环执行的状态5.7.1-5.7.2 用break和continue语句提前终止循环5.7.3 break和continue的不同 break语句和continue语句的区别5.8 综合运用--检测磁盘剩余容量与统计字符串中的单词数 循环程序举例第6章 处理批量数据的利器--数组 利用数组处理批量数据6.1 如何定义和引用一维数组 怎样定义和引用一维数组6.1.1 如何定义一维数组--保存学生成绩的例子 怎样定义一维数组6.1.2 如何引用一维数组 怎样引用一维数组元素6.1.3 使用memset函数进行一维数组的初始化 一维数组的初始化6.1.4 用qsort函数对数组进行排序 一维数组程序举例6.2 如何定义和引用二维数组 怎样定义和引用二维数组6.2.1 如何定义二维数组及二维数组的内存排列方式 怎样定义二维数组6.2.2 如何引用二维数组 怎样引用二维数组的元素6.2.3 使用memset函数进行二维数组的初始化 二维数组的初始化6.2.4 对二维数组中的数据进行排序 二维数组程序举例6.2.4.A 分析问题,定义二维数组描述批量数据6.2.4.B 向二维数组输入数据6.2.4.C 用qsort函数对二维数组进行排序6.2.4.D 输出二维数组结果6.2.A 扩展:多维数组的使用6.3 字符数组的本质 字符数组6.3.1-6.3.3 如何定义字符数组6.3.4 字符串和字符数组的区别 字符串和字符串结束标志6.3.5 字符数组和字符串的输入输出 字符数组的输入输出6.3.6 使用字符串处理函数完成字符串处理任务 使用字符串处理函数6.3.6.A 用gets和puts输入输出字符串6.3.6.B 用strcat连接两个字符串6.3.6.C 用strchr和strstr查找字符串6.3.6.D 用strcmp比较字符串6.3.7 综合运用--自己写一个strsub函数截取字符串 字符数组应用举例6.A 如何运用数组处理批量数据--一个计算平均血糖的例子6.A.A 什么时候应该使用数组6.A.B 如何将数据输入到数组6.A.C 如何处理数组中的数据6.A.D 数组使用的三部曲:定义数组、输入数据、处理数据第7章 模块化程序设计的根基--函数 用函数实现模块化程序设计7.1 为什么要用函数--便于代码的管理和复用 为什么要用函数7.2 如何声明函数 怎样定义函数7.2.1 为什么要声明函数 为什么要定义函数7.2.2 声明函数的方法 定义函数的方法7.2.2A 声明函数的三要素:返回值、函数名、参数列表7.3 如何调用函数 调用函数7.3.1 调用的形式及调用语句 函数调用的形式7.3.2 函数调用时的数据传递--两个方向的传递 函数调用时的数据传递7.3.2A 如何向函数传递体积很大的数据7.3.3 调用的过程--简单,没啥可说的 函数调用的过程7.3.4 关于函数的返回值 函数的返回值7.3.4A 如何从函数返回多个结果数据7.4 编译器对函数声明的要求 对被调用函数的声明和函数原型7.4A 创建一个我们自己的头文件7.A 站在巨人的肩膀上--如何使用已有的函数库7.B 我也能成为巨人--如何创建一个函数库7.5 嵌套的函数调用 函数的嵌套调用7.6 函数的递归调用--统计字符串出现的次数 函数的递归调用7.C 让函数飞--在C语言中嵌入汇编代码7.7 将数组作为函数参数传递 数组作为函数参数7.8 变量的生存期 局部变量和全局变量7.8.1 局部变量的定义及作用域 局部变量7.8.1A 不要从函数返回指向局部变量的指针7.8.2 全局变量及跨文件的全局变量 全局变量7.9 变量的存储方式及其区别 变量的存储方式和生存期7.10 变量的声明和定义的区别--是否建立存储空间 关于变量的声明和定义7.11 控制函数的访问范围 内部函数和外部函数7.D 函数使用的四项基本原则第8章 指针?没啥好怕的! 善于利用指针8.1 什么是指针 指针是什么8.2 什么是指针变量 指针变量8.2.1 使用指针变量的例子--指针的四大用途 使用指针变量的例子8.2.1A 什么是NULL指针8.2.2 如何定义指针变量 怎样定义指针变量8.2.2A 内存的动态申请与释放8.2.3 如何引用指针变量 怎样引用指针变量8.2.3A 指针变量存放在哪里呢?8.2.4 使用指针变量作为函数参数的场合 指针变量作为函数参数8.3 更灵活的数组访问方式--使用指针访问数组 通过指针引用数组8.3.1-8.3.3A 使用指针访问数组的要点8.3.4 如何向函数传递一个数组 用数组名作函数参数8.3.5 通过指针引用多维数组的要点--统计学生成绩的例子 通过指针引用多维数组8.4 利用指针引用字符串 通过指针引用字符串8.5 定义指向函数的指针 指向函数的指针8.5.1 了解函数指针 什么是函数指针8.5.1A 函数指针背后的故事--剖析它的汇编代码8.5.2 利用函数指针变量调用函数 用函数指针变量调用函数8.5.3 函数指针变量的定义和使用 怎样定义和使用指向函数的指针变量8.5.4 用函数指针作函数参数--在函数之间传递函数,即传递操作用指向函数的指针作函数参数8.6 使用指针作为函数的返回值 返回指针值的函数8.7 指针数组及指向指针的指针 指针数组和多重指针8.7.1 什么是指针数组--一个电磁炉火力控制程序 什么是指针数组8.7.2 指向指针的指针 指向指针数据的指针8.7.3 向main函数传递数据 指针数组作main函数的形参8.8 动态内存分配及动态调整 动态内存分配与指向它的指针变量8.9 指针的“醒世恒言” 有关指针的小结8.A 如何避免错误地使用指针第9章 建立自己的数据类型 用户自己建立数据类型9.1 结构体变量登场 定义和使用结构体变量9.1.1-9.1.3 关于这三小节的特别说明9.1.A 定义结构体应该注意的问题9.1.B 使用结构体以及它的数据成员9.2 使用结构体数组--利用qsort函数对数组排序 使用结构体数组9.2.1-9.2.2 关于这两小节的特别说明9.3 利用结构体指针减少传递的数据量 结构体指针9.3.1-9.3.3 关于这三小节的特别说明9.4 笔试必考,面试必问的数据结构--链表 用指针处理链表9.4.1 链表是神马 什么是链表9.4.2 如何建立静态链表 建立简单的静态链表9.4.3 如何建立动态链表 建立动态链表9.4.4 如何输出链表 输出链表9.4.A 链表数据的处理:对链表进行排序和查找9.4.B 链表数据的处理:查找结点9.4.C 释放一个链表9.5 共用体类型的定义和使用 共用体类型9.5.1-9.5.3 关于这三小节的特别说明9.6 什么是枚举类型 使用枚举类型9.7 数据类型也可以有个更好记更好用的绰号--用typedef声明新的数据类型 用typedef声明新类型名0章 文件的输入与输出 对文件的输入输出10.1 在C中文件的概念是怎样的 C文件的有关基本知识10.1.1-10.1.5 关于这五小节的特别说明10.1A C语言所处理的文件类型10.2 如何打开与关闭文件 打开与关闭文件10.2.1 使用fopen函数打开数据文件及注意事项 用fopen函数打开数据文件10.2.1A 用freopen重定向标准输入输出流10.2.2 使用fclose函数关闭数据文件及注意事项 用fclose函数关闭数据文件10.3 对数据文件进行顺序读写 顺序读写数据文件10.3.1-10.3.2 怎样向文件读写字符和字符串10.3.3 使用函数来进行数据文件的格式化读写 用格式化的方式读写文件10.3.4 二进制方式的文件读写--读写一张图片 用二进制方式向文件读写一组数据10.3.A 文件读写的“三大纪律”10.4 在任意位置读写数据文件 随机读写数据文件10.4.1-10.4.2 关于这两小节的特别说明10.5-10.5A 扩展:访问文件的各种属性10.5A.A 如何判断文件是否存在10.5A.B 如何获得文件的日期和大小第A章 程序是如何炼成的A.A 问题的提出--统计网页中的词频A.B 自顶向下:分析问题,划分模块A.B.A 分析数据输入模块A.B.B 分析数据处理模块A.B.C 分析数据输出模块A.C 逐步求精:用函数实现各个模块A.C.A 实现数据输入模块A.C.B 实现数据处理模块A.C.C 组装实现数据预处理模块A.C.D 实现计算词频模块A.C.E 实现文件排序模块A.C.F 实现数据输出模块A.C.G 打扫战场:释放动态申请的内存A.D 百炼成钢:如何调试我们的程序A.E 程序就是这样炼成的第B章 接下来我该  B.A 接下来要读的书B.A.A 提升对C语言的理解和掌握B.A.B 做一个有思想的程序员B.B 接下来要做的事B.B.A 编码、编码、再编码B.B.B 软件开发模型:一个项目是如何运作的B.B.C 实际参与一个项目B.C 接下来该走的路B.C.A 开发方向的选择:底层开发、应用开发还是网络开发?B.C.B 开发语言的选择:C语言、C++还是C#?
作者介绍
陈良乔,一个喜欢写作的程序员。一个喜欢编程的文艺青年。连续八年获得微软有价值专家(MVP)称号。曾任东软数字医疗项目经理;德国IB&T中国公司架构师。挚爱技术,好分享。作为讲师进行百人以上微软技术讲座数十次。因撰写一系列有分量的Visual Studio和Windows 7技术文章荣获“MSDN原创之星”称号。因参与Visual Studio的工作,荣获“Visual Studio贡献水晶奖杯”。生性乐观,敏而好学,乐于分享。平素喜好新鲜事物,但绝非新潮技术的追捧者,至今仍执迷C/C++这些古老而新鲜的技术。好舞文弄墨,传播心得。著有《我的第一本C++书》。组织并参与翻译《C++ 11 FAQ中文版》。
序言

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP