C语言入门经典

出版时间:2008-4  出版社:清华大学出版社  作者:霍顿  页数:571  译者:杨浩  
Tag标签:无  

内容概要

  本书是编程语言先驱者Ivor Horton的经典之作,是C语言方面最畅销的图书品种之一。本书集综合性、实用性为一体,是学习C语言的优秀入门教材,在世界范围内广受欢迎,口碑极佳。书中除了讲解C程序设计语言,还广泛介绍了作为一名C程序设计人员应该掌握的必要知识,并提供了大量的实用性很强的编程实例。本书的目标是使你在C语言程序设计方面由一位初学者成为一位称职的程序员。读者基本不需要具备任何编程知识,即可通过本书从头开始编写自己的C程序。

作者简介

杨浩,知名译者,大学讲师,从事机械和计算机方面的教学和研究多年,发表论文数篇,参编和翻译的图书多达20余部,还曾多次获得市部级奖项。近几年一直在跟踪.NET技术的发展,积极从事.NET技术文档和图书的翻译工作。

书籍目录

第1章  C语言编程     1.1  创建C程序      1.1.1  编辑      1.1.2  编译      1.1.3  链接      1.1.4  执行     1.2  创建第一个程序     1.3  编辑第一个程序     1.4  处理错误     1.5  剖析一个简单的程序      1.5.1  注释      1.5.2  预处理指令      1.5.3  定义main()函数      1.5.4  关键字      1.5.5  函数体      1.5.6  输出信息      1.5.7  参数      1.5.8  控制符     1.6  用C语言开发程序      1.6.1  了解问题      1.6.2  详细设计      1.6.3  实施      1.6.4  测试     1.7  函数及模块化编程     1.8  常见错误     1.9  要点     1.10  小结     1.11  习题    第2章  编程初步     2.1  计算机的内存     2.2  什么是变量     2.3  存储数值的变量      2.3.1  整数变量      2.3.2  变量的命名      2.3.3  变量的使用      2.3.4  变量的初始化      2.3.5  算术语句     2.4  变量与内存     2.5  整数变量类型      2.5.1  无符号的整数类型      2.5.2  使用整数类型      2.5.3  指定整数常量     2.6  浮点数     2.7  浮点数变量     2.8  使用浮点数完成除法运算      2.8.1  控制小数位数      2.8.2  控制输出的字段宽度     2.9  较复杂的表达式     2.10  定义常量      2.10.1  极限值      2.10.2  sizeof运算符     2.11  选择正确的类型     2.12  强制类型转换      2.12.1  自动转换类型      2.12.2  隐式类型转换的规则      2.12.3  赋值语句中的隐式类型转换     2.13  再谈数值数据类型      2.13.1  字符类型      2.13.2  字符的输入输出      2.13.3  宽字符类型      2.13.4  枚举      2.13.5  存储布尔值的变量      2.13.6  复数类型     2.14  赋值操作的op=形式     2.15  数学函数     2.16  设计一个程序      2.16.1  问题      2.16.2  分析      2.16.3  解决方案     2.17  小结     2.18  练习    第3章  条件判断     3.1  判断过程      3.1.1  算术比较      3.1.2  涉及关系运算符的表达式      3.1.3  基本的if语句      3.1.4  扩展if语句:if-else      3.1.5  在if语句中使用代码块      3.1.6  嵌套的if语句      3.1.7  更多的关系运算符      3.1.8  逻辑运算符      3.1.9  条件运算符      3.1.10  运算符的优先级     3.2  多项选择问题      3.2.1  给多项选择使用else-if语句      3.2.2  switch语句      3.2.3  goto语句     3.3  按位运算符      3.3.1  按位运算符的op=用法      3.3.2  使用按位运算符     3.4  设计程序      3.4.1  问题      3.4.2  分析      3.4.3  解决方案     3.5  小结     3.6  练习    第4章  循环     4.1  循环     4.2  递增和递减运算符     4.3  for循环     4.4  for循环的一般语法     4.5  再谈递增和递减运算符      4.5.1  递增运算符      4.5.2  递增运算符的前置和后置形式      4.5.3  递减运算符     4.6  再论for循环      4.6.1  修改for循环变量      4.6.2  没有参数的for循环      4.6.3  循环内的break语句      4.6.4  使用for循环限制输入      4.6.5  生成伪随机整数      4.6.6  再谈循环控制选项      4.6.7  浮点类型的循环控制变量     4.7  while循环     4.8  嵌套循环     4.9  嵌套循环和goto语句     4.10  do-while循环     4.11  continue语句     4.12  设计程序      4.12.1  问题      4.12.2  分析      4.12.3  解决方案     4.13  小结     4.14  习题    第5章  数组     5.1  数组简介      5.1.1  不用数组的程序      5.1.2  什么是数组      5.1.3  使用数组     5.2  内存     5.3  数组和地址     5.4  数组的初始化     5.5  确定数组的大小     5.6  多维数组     5.7  多维数组的初始化     5.8  设计一个程序      5.8.1  问题      5.8.2  分析      5.8.3  解决方案     5.9  小结     5.10  习题    第6章  字符串和文本的应用     6.1  什么是字符串     6.2  处理字符串和文本的方法     6.3  字符串操作      6.3.1  连接字符串      6.3.2  字符串数组     6.4  字符串库函数      6.4.1  使用库函数复制字符串      6.4.2  使用库函数确定字符串的长度      6.4.3  使用库函数连接字符串      6.4.4  比较字符串      6.4.5  搜索字符串     6.5  分析和转换字符串      6.5.1  转换字符      6.5.2  将字符串转换成数值     6.7  使用宽字符串     6.8  设计一个程序      6.8.1  问题      6.8.2  分析      6.8.3  解决方案     6.9  小结     6.10  习题    第7章  指针     7.1  指针初探      7.1.1  声明指针      7.1.2  通过指针访问值      7.1.3  使用指针      7.1.4  指向常量的指针      7.1.5  常量指针      7.1.6  指针的命名     7.2  数组和指针     7.3  多维数组      7.3.1  多维数组和指针      7.3.2  访问数组元素     7.4  内存的使用      7.4.1  动态内存分配:malloc()函数      7.4.2  分配内存时使用sizeof运算符      7.4.3  用calloc()函数分配内存      7.4.4  释放动态分配的内存      7.4.5  重新分配内存     7.5  使用指针处理字符串      7.5.1  更多地控制字符串输入      7.5.2  使用指针数组     7.6  设计程序      7.6.1  问题      7.6.2  分析      7.6.3  解决方案     7.7  小结     7.8  习题    第8章  程序的结构     8.1  程序的结构      8.1.1  变量的作用域和生存期      8.1.2  变量的作用域和函数     8.2  函数      8.2.1  定义函数      8.2.2  return语句     8.3  按值传递机制     8.4  函数声明     8.5  指针用作参数和返回值      8.5.1  常量参数      8.5.2  从函数中返回指针值      8.5.3  在函数中递增指针     8.6  小结     8.7  习题    第9章  函数再探     9.1  函数指针      9.1.1  声明函数指针      9.1.2  通过函数指针调用函数      9.1.3  函数指针数组      9.1.4  作为变元的函数指针     9.2  函数中的变量      9.2.1  静态变量:函数内部的追踪      9.2.2  在函数之间共享变量     9.3  调用自己的函数:递归     9.4  变元个数可变的函数      9.4.1  复制va_list      9.4.2  长度可变的变元列表的基本规则     9.5  main()函数     9.6  结束程序     9.7  函数库:头文件     9.8  提高性能      9.8.1  内联声明函数      9.8.2  使用restrict关键字     9.9  设计程序      9.9.1  问题      9.9.2  分析      9.9.3  解决方案     9.10  小结     9.11  习题    第10章  基本输入和输出操作     10.1  输入和输出流     10.2  标准流     10.3  键盘输入      10.3.1  格式化键盘输入      10.3.2  输入格式控制字符串      10.3.3  输入格式字符串中的字符      10.3.4  输入浮点数的各种变化      10.3.5  读取十六进制和八进制值      10.3.6  用scanf()读取字符      10.3.7  scanf()的陷阱      10.3.8  从键盘上输入字符串      10.3.9  键盘的非格式化输入     10.4  屏幕输出      10.4.1  使用printf()格式输出到屏幕      10.4.2  转义序列      10.4.3  整数输出      10.4.4  输出浮点数      10.4.5  字符输出     10.5  其他输出函数      10.5.1  屏幕的非格式化输出      10.5.2  数组的格式化输出      10.5.3  数组的格式化输入     10.6  打印机输出     10.7  小结     10.8  习题    第11章  结构化数据     11.1  数据结构:使用struct      11.1.1  定义结构类型和结构变量      11.1.2  访问结构成员      11.1.3  未命名的结构      11.1.4  结构数组      11.1.5  表达式中的结构      11.1.6  结构指针      11.1.7  为结构动态分配内存     11.2  再探结构成员      11.2.1  将一个结构作为另一个结构的成员      11.2.2  声明结构中的结构      11.2.3  将结构指针用作结构成员      11.2.4  双向链表      11.2.5  结构中的位字段     11.3  结构与函数      11.3.1  结构作为函数的变元      11.3.2  结构指针作为函数变元      11.3.3  作为函数返回值的结构      11.3.4  修改程序      11.3.5  二叉树     11.4  共享内存      11.4.1  联合      11.4.2  联合指针      11.4.3  联合的初始化      11.4.4  联合中的结构成员     11.5  定义自己的数据类型      11.5.1  结构与类型定义(typedef)功能      11.5.2  使用typedef简化代码     11.6  设计程序      11.6.1  问题      11.6.2  分析      11.6.3  解决方案     11.7  小结     11.8  习题    第12章  处理文件     12.1  文件的概念      12.1.1  文件中的位置      12.1.2  文件流     12.2  文件访问      12.2.1  打开文件      12.2.2  文件重命名      12.2.3  关闭文件      12.2.4  删除文件     12.3  写入文本文件     12.4  读取文本文件     12.5  将字符串写入文本文件     12.6  从文本文件中读入字符串     12.7  格式化文件的输入输出      12.7.1  格式化文件输出      12.7.2  格式化文件输入     12.8  错误处理     12.9  再探文本文件操作模式     12.10  二进制文件的输入输出      12.10.1  指定二进制模式      12.10.2  写入二进制文件      12.10.3  读取二进制文件     12.11  在文件中移动      12.11.1  文件定位操作      12.11.2  找出我们在文件中的位置      12.11.3  在文件中设定位置     12.12  使用临时文件      12.12.1  创建临时文件      12.12.2  创建唯一的文件名     12.13  更新二进制文件      12.13.1  修改文件的内容      12.13.2  从键盘读取记录      12.13.3  将记录写入文件      12.13.4  从文件中读取记录      12.13.5  写入文件      12.13.6  列出文件内容      12.13.7  更新已有的文件内容     12.14  文件打开模式小结     12.15  设计程序      12.15.1  问题      12.15.2  分析      12.15.3  解决方案     12.16  小结     12.17  习题    第13章  支持功能     13.1  预处理      13.1.1  在程序中包含头文件      13.1.2  外部变量及函数      13.1.3  替换程序源代码      13.1.4  宏替换      13.1.5  看起来像函数的宏      13.1.6  多行上的预处理指令      13.1.7  字符串作为宏参数      13.1.8  结合两个宏展开式的结果     13.2  预处理器逻辑指令      13.2.1  条件编译      13.2.2  测试指定值的指令      13.2.3  多项选择      13.2.4  标准预处理宏     13.3  调试方法      13.3.1  集成的调试器      13.3.2  调试阶段的预处理器      13.3.3  使用assert()宏     13.4  其他库函数      13.4.1  日期和时间函数库      13.4.2  获取日期     13.5  小结     13.6  习题    附录A  计算机中的数学知识    附录B  ASCII字符代码定义    附录C  C语言中的保留字    附录D  输入输出格式指定符

编辑推荐

  尊敬的读者:  C语言是一种非常优秀的程序设计的入门语言。它比其他大部分语言都简洁易学,所以在开始使用C语言编写真正的应用程序之前并不需要学习太多语法。C语言也是功能相当强大的语言,很多操作系统都是用C语言编写的。大多数计算机环境都支持C语言,因此当你学会了C语言后,你将有能力在各种环境下进行程序设计。  本书的目标是使你在C语言程序设计方面由一位初学者成为一位称职的程序员。书中包含了C语言的全部基础知识,并将教会你如何进行程序设计。除了本书之外,你需要的东西只有一样,那就是一个得到广泛支持的免费的或者商业的标准C编译器,有了它即可开始编写实际的C程序了。  本书从第一个编程原理开始,使用各种程序示例解释C语言的所有元素,不要求你之前拥有任何编程知识。通过编写能够运行的完整C应用程序,在实际的环境中运用所学的知识,可帮助你提高自己的程序设计能力。你也可以在创建和执行自己的程序示例的过程中获得自信。  学习C语言也有一定的难度,但是我确信你会感到乐趣无穷,也会发现自己劳有所获。只要你有热情和信心读完本书,你将会掌握大量有价值的知识。从此,你将步入C程序设计的殿堂,开始自己的C程序开发之旅。

图书封面

图书标签Tags

评论、评分、阅读与下载


    C语言入门经典 PDF格式下载


用户评论 (总计164条)

 
 

  •   虽然才读了前几章,但确实收获颇丰~~比我们学校发的教材好多了。我之前没有学过c语言,但读这本书时没有什么阅读障碍。里面的编程例子不仅简单易懂,教会知识,而且更多的是从人性化角度出题,比如说第一章内让我输出一行代码,内容是"If at first you don't succeed,try,try,try again!"跟我们学校的教材风格完全不同,让我眼前一亮,更能激发我学习的动力。编排的系统也非常合理,会让我在编写第一个程序时就能知道我打出的这段代码中每个符号代表什么意思,而我们的教材就不是这样。我喜欢这本书~~
  •   看了几位网友的评论,个人有个人的感觉,我觉得这本书起码比谭浩强的C语言程序设计要好。里面的东西讲得比较齐全,能注意到一些良好的写程序习惯。
  •   从书名就可以看出此书的品质与定位,作为C语言入门教材,绝对是经典。适合没有任何编程基础但又想学习C语言的人阅读。
  •   本书特别适合初学者,代码事例讲解的非常详细,好包括程序的设计思路一并介绍,超赞
  •   非常好的书 对于没有基础的我来说 这是本不错的教材
    它的特点在于 非常详细非常清楚 特备适合“基础” 可能有的人觉得这本书啰嗦 废话太多
    但是我认为 这本书符合书名“入门基础” 确实适合初学者(不建议已有C语言基础的人购买 因为书中有的东西你已经知道了 你可能不太喜欢)
  •   作为C语言的入门书籍,我并不推荐《C primer plus》,因为相比于这本书而言,另外一本书相对而言深入一点(换句话说,需要有C语言基础的人学习才会比较好),作为初学者而言(0基础入门),我推荐这本书。
  •   已经读了100多页了,非常不错的一本书。多年前(2008年吧)考三级网络技术的时候自学过C语言,但是那是学的比较简单,只是为了应付一下上机考试,现在看下来,感觉非常不错的,对于我这种初学者能学到很多知识。不足是翻译质量实在是一般,有一些地方句子不通顺,需要费点儿心思才能理解。
  •   这个系列的书有很多,的确适合初学者阅读,而且国外的程序读物要大大优于国内的作品。
  •   好书不需要解释,指针和数组的章节,程序例子非常好
  •   C语言入门经典(第4版)
  •   如果是c语言入门,最好看看这本书,很好很强大。
  •   最经典的C语言入门书籍
  •   这是一本很基础的C语言入门教程,很经典!
  •   还行对操作的实用性来说还是很好的,买了感觉还行,学习C语言很好的一本书,详细的讲解!!
  •   生动有趣的C入门教材,比起国内的教材,语言更风趣生动,厚厚的一大本,但是浅显易懂,正在学习之中,本来是给儿子买的,我更爱看这本。
  •   很适合初学者对程序员温习C语言也是个不错的指导书
  •   作为一个c语言的初学者,还是觉得这本书不错的。讲的很详细,比较容易理解。相信靠着这本书,我能把c学好。下学期的课也有个基本的掌握了。不错!
  •   详细具体,讲透c语言,适合入门级读者,推荐一个。
  •   C语言入门一本很不错的书
  •   一本很不错的c语言入门教材
  •   C语言基础入门推荐
  •   绝对的c语言入门!很容易懂、好!
  •   C语言的比较好的入门书籍
  •   自学C语言,个人觉得谭书太渣,看了这本书,真心推荐。不要被老谭坑了
  •   这本书适合0基础学习C语言,其实我学过一学期C,还想想还是基础不扎实,就买啦,觉得不错
  •   超级正点的书,经典啊!印刷很棒,还推荐给学生们购买了。最实用的C语言实用教程!
  •   书不错,对于我这个0基础的人来说,第一眼看下去还觉得有兴趣!这么多人推荐应该是不错的!本人粗略的看了一点,觉得还可以!推荐对C语言有兴趣的可以去买一本回来看看!书的质量还可以
  •   经典C语言的书
  •   非常好,本书写的很生动,让我不知不觉就进入C语言的世界!
  •   非常经典!
    想学C语言的,就选它!
  •   很平民化的语言,讲得很详细,例子很多,容易理解。很经典。
  •   这本堪称经典不说,内容很容易理解,不过要熟悉C语言还是要多看几遍才行。
  •   C的入门经典,我要成为编程大神!
  •   非常适合有一定基础的人重温C语言,很好的教材
  •   这是一本非常好的c语言书。但是发过来的时候破了一个角。。。哭。。
  •   想学C语言就买这本书吧,十分适合学习
  •   这本书的确不错,就算是编程零基础也可以慢慢学,强烈推荐自学能力一般的初学者使用,用过都说好哦。
  •   这一本 写的很不错,入门首选, 我相信坚持看完这本书,一定会成为一个合格的程序员~^_^
  •   买回来想自学C语言,书很好,全面
  •   刚学C语言不久,学校发的书烂七八糟,估计是坑钱来的,自己买了一本,果真级别不是一档次的。
  •   非常不错的C语言书,值得细读!
  •   书写得很详细,但是还是让新手有些困惑,主要是在语言的安装上,没有详细介绍安装,也没有网址能下载正确的软件
  •   要想学C语言,选它没错!
  •   在看中,自学c语言,觉得自己还是可以看得懂的。蛮不错的,例题也可以啊。
  •   对c语言新手来说,蛮好的
  •   外国的c语言还是比较靠谱
  •   C语言
  •   初学者用 谭浩强写的那本 或者 这本 都是再适合不过的了。看到很多给中评的人 说这本书写的太基础了,不适用...我就纳闷了,标题写的很清楚 入门,神马心态...
  •   很适合初学者的编程书,很详细,还不错
  •   书刚大致的看了一下,挺好的感觉,买之前就从网上看的评论挺好,对于刚入门的学习确实不错,收快递时是自己把电话留错了,如果细心点的话早就拿到书了,给个好评,只不过在快递的时候,书给折了,希望快递人员可以小心点,毕竟是书,折了就不好看了
  •   很通俗,非常适合初学者,指针和数组的概念解释的很清楚,是入门好书
  •   作为入门教程挺不错的,支持下
  •   书挺好的,只是我买错了......我要的是C#入门经典
  •   快递很给力,这本书也是我一直梦想拥有的,很不错的书,经典!
  •   书还不错,简单易懂入门学习正合适
  •   入门经典,值得推荐!!!
  •   这本书非常简单 容易入门,不错的一本书
  •   很适合入门 开始没有太难的内容
  •   书很好,很厚
    内容由浅及深,很适合初学者
    不过就是内容翻译不好,有几个词连百度都搜不到
    总体不错
  •   两本书总体不错 可以互相补充 经常这本书没讲到的知识 另一本书正好有补充对于0基础的文科生来说 有帮助 慢慢学 相信我会学好的
  •   我虽然是脑抽买的,但是这书真的不错,容易懂,入门的孩子只要找对路按照书本循序渐进效果会很好。
  •   朋友推荐入门级的书,还是很不错的,书的质量也很不错
  •   不过我不算入门了 很明显比谭浩强的书好几倍
  •   挺不错的书,对学习有很大的帮助,而不需要基础就可以看
  •   由于大学学的都还给老师了,所以自学了一下,发现这本书真是经典经典
  •   这本书太经典了,里面的内容比较原味
  •   全书由浅入深,适合初学者,也适合想更深学习的读者
  •   书看了,感觉很实在,内容写得通俗易懂,适合初学者学习和理解,谢谢了
  •   这本书很好很经典,讲解细致
  •   一本适合初学者使用的书籍,书的质量也挺好的。
  •   之前一直想买的书,很好
  •   对于入门来说的比较不错吧,不懂的还是要善于利用网络搜索资料~
  •   很好,入门还行。感觉印刷质量一般。
  •   好书,通俗易懂,入门必备
  •   内容好充实,适合入门
  •   非常好的入门书籍,深入浅出
  •   由于经常在当当买书一般很少当场验货,一直以来对当当质量的信任,没想到这次收到的书有点旧,书脚也破了!书里面的内容印刷的深浅不一的,质量很一般呢!现在只好把希望寄拓在书里知识上了。希望内容是真的有用吧!
  •   太经典了,国外的教材都是那么循序渐进、体例详实的吗?总之有一种相见恨晚的感觉。
  •   这本书是我现在最需要的、非常好
  •   这本书,感觉适合初学者,挺不错的。
  •   很好的一本书。对于初学者很有意义
  •   很不错的一本书,特别适合初学者!
  •   经典书籍,值得拥有,就是目前还没看完,看了一半
  •   书比较贵,但页数也多,适合初学者,讲解很详细
  •   蛮不错的书,对于初学者和考试的有帮助
  •   速度快,态度好,书我看了下,对我这样的初学者来说,还算看得懂
  •   这本书确实比大多数教科书好很多,自己看了下,挺受益的。
  •   挺好的一本书,就是书的封面好多灰,貌似是划痕,擦不掉,本来是送人的,不太好意思。
  •   的确很棒的书编写得很详细任何人都可以看懂
  •   很有吸引力,很适合初学者,喜欢这系列的书
  •   书很好,很适合初学者,讲得特别细
  •   值得看的书,初学者非常适合
  •   经典之作,我喜欢
  •   书不错,材质好;在学习中
  •   易懂,细致,还没看完,但是对于我这个零基础的人来说,还是有信心吧
  •   很好很强大的一本书。。。。
  •   快递速度很快,这本书的内容很好,很适合初级的学习的人……
  •   还是老外写的书好,中国教育需要改革。
  •   没啥基础的学这个还是不错的,比较详细,可以好好的学。但里面的代码格式和老师教的不太一样,书上的是int mian(void){ re***n 0;},学校的教材是void main(){}
  •   书很经典的,快递真给力
 

250万本中文图书简介、评论、评分,PDF格式免费下载。 第一图书网 手机版

京ICP备13047387号-7