⑴ 有什么学C语言的好书
你好,很高兴回答您的问题。个人建议看《C primer plus》、《写给大家的C语言书》、《C语言解惑》、《你必须知道的495个C语言问题》、《编程精粹》、《C标准库》等国外优秀着作。 还有一个 ::C语言入门经典(第4版) 作者: 出版:清华大学 出版日期:2008年04月 本书是编程语言先驱者Ivor Horton的经典之作,是C语言方面最畅销的图书品种之一。本书集综合性、实用性为一体,是学习C语言的优秀入门教材,在世界范围内广受欢迎,口碑极佳。书中除了讲解C程序设计语言,还广泛介绍了作为一名C程序设计人员应该掌握的必要知识,并提供了大量的实用性很强的编程实例。本书的目标是使你在C语言程序设计方面由一位初学者成为一位称职的程序员。读者基本不需要具备任何编程知识,即可通过本书从头开始编写自己的C程序。 新华书店网店新华文轩有卖的 谢谢采纳。
⑵ 介绍几本c语言的代码练习书
C程序设计之四书五经
荣耀/文
引言 自从Dennis M.Ritchie于1973年设计并实现C语言以来,计算机程序设计领域已经发生了巨 大的变化。以C语言为根基的C++、Java和C#等面向对象语言相继诞生,并在各自领域大获成 功。今天,C及其后裔几乎统治了计算机程序设计世界。可以这么说,C语言的诞生是现代程序 语言革命的起点,它改变了程序设计语言发展的轨迹,是程序设计语言发展史中的一个里程碑。 然而,C并不仅仅是其他语言的起点和基础,否则它早已成为程序设计语言发展过程中又 一个被遗弃者。和当初发明时一样,C语言今天依然至关重要。它的表达力、效率、简练、紧 凑、对机器的最终控制以及跨平台的高度移植性,使其在系统编程、嵌入式编程等领域一直占 据着统治地位,而C99标准的制订则再一次使C语言焕发出新的活力。下文介绍C程序设计领域 中的几本好书,其中一些堪称经典。
1. Brian W.Kernighan, Dennis M.Ritchie,《C程序设计语言》 清华影印版、习题集;机械译文版(新版、老版):习题集 这是迄今为止在所有程序设计语言书籍中最广受尊敬的一部经典,是任何一名C程序员的 必读之作。因为出自C语言的设计者 Dennis M.Ritchie 和着名的计算机科学家 Brian W.Kernighan之手,它被昵称为“K&R C”。是它首先引入了“Hello World!”程序,这个程序几乎 成了后来任何一本入门性程序设计语言书籍中的第一个例子。 如同C语言本身简洁紧凑而极具威力一样,这本书轻薄短小而极富张力。通过简洁的描述 和典型的示例,它全面、系统、准确地讲述了C语言的各个特性以及C程序设计的基本方法,内 容涵盖基本概念、类型和表达式、控制流、函数与程序结构、指针与数组、结构、输入与输出、 UNIX系统接口以及标准库等内容。 简洁清晰是这本书最大的特色。这本小书可以教给你许多比它厚几倍的“大部头”的知识。 我认为那些动辄洋洋洒洒拼凑出好几百页乃至上千页的技术作者应该好好向K&R学一学。对于 中、高级程序员而言,如果希望迅速获得C语言的严肃知识而又不愿意多花费哪怕一丁点时间, 这本书就是首选。四书五经:CSDN《程序员》四书五经专栏历年文章汇总 顺便说一句,这本书的索引制作非常出色,极具实用价值,这可能首先要归功于正文部分 的简明扼要。此外,尽管它看上去很像一本教程,但其实更是一本写给专业程序员的指南。如 果你不具备任何其他语言程序设计背景或基本的C语言知识,这本书也许并不适合用作你的C语 言启蒙读物。
2. Perter Van Der LinDen,《C专家编程》 C专家编程 C语言是严肃的程序员语言,但这并不意味着C语言书籍必须板着面孔说教。在这本被C程 序员昵称为“鱼书”(封面上有一条“丑陋的”腔棘鱼)的着作中,作为SUN公司编译器和操作系统 核心开发组成员之一,Peter淋漓尽致地展示了其深厚的技术沉淀、丰富的项目经验、高超的写 作技巧以及招牌式的幽默。在这部作品中,作者以流畅的文字、诙谐的笔法将逸闻典故、智慧 和幽默自然地融入技术描述中,读来宛若一本小说,极富趣味。 本书讲述了C语言的历史、语言特性、声明、数组、指针、连接、运行时以及内存使用等 知识,揭示了C语言中许多隐晦之处,尤其深入解析了声明、数组和指针、内存使用等方面的 细节。要想成为一名专家级C程序员,这些内容都是必须掌握的。和其他满是抽象例子的C语言 书籍不同,这本书充满了大量的来自真实世界的C程序设计实例,它们对C程序员具有很高的参 照价值。另外,每一章都以极富趣味的“轻松一下”收尾,而附录A“程序员工作面试的秘密”则是 任何语言的程序员在应聘工作前增强自信的好材料。 我怀疑真正的C专家可能用不着看这本书 ——从内容到组织方式到行文风格都决定了这 是一本轻松愉快的“从菜鸟到高手”的进阶读本,所以,它理应拥有更广泛的读者群。初级程序 员往往更需要热情的鼓励,在阅读这本书的过程中,你定会深深地被作者对编程的激情所感染。 世间并无完美。我认为这本书的缺陷在于,和大多数平庸的C语言书籍一样,它画蛇添足 地加入了一章关于C++的描述。在今天看来,这个描述既不全面也有失公允。不过,鉴于作者 是在1994年从一名C程序员的角度去观察C++,这一点也就不足为奇了。
3. Samuel P. Harbison, Guy L. Steele,《C语言参考手册(第五版)》四书五经:CSDN《程序员》四书五经专栏历年文章汇总 影印版(机械工业出版社)、中文版(机械工业出版社) 在C语言参考手册类书籍里,Samuel P. Harbison 和Guy L. Steele合着的C: AReference Manual是非常出色的一本。这本手册的第五版新增了对C99标准的介绍,以便满足新时期C语 言学习的需要。全书共分为两大部分,第一部分专注于C语言特性,第二部分则全面讨论了C标 准库。本书涵盖C99、C89、传统的C、所有版本的C运行库以及编写与C++兼容的C代码等一 切知识。 这本手册只是中等厚度,但它比“比它更厚”的其他参考手册更清晰地描述了C语言的现在和 过去的方方面面。整本手册技术细节描述精确,组织条理清楚,内容完备详尽而又简明扼要。 可以这么说,它在广度、深度和精度方面都是出类拔萃的。对于中、高级C程序员而言,这本 手册值得常备案头,它几乎肯定要比K&R的着作使用频率更高。
4. David Hanson,《C语言接口与实现:创建可重用软件的技术》,机械工业出版社 C语言接口与实现:创建可重用软件的技术 C语言能够历经三十多年而不衰,一个重要的原因在于它的适应能力。在这“复用”、“面向 对象”、“组件”、“异常处理”等先进机制漫天飞舞的年代,C语言仍然能够凭借它小而优雅的语言 特性,在相当程度上满足现代软件体系架构提出的要求。只不过,想要达到这个程度,必须要 在C的应用功力上达到最高层次。在嵌入式、系统软件以及对性能要求极高的系统开发中,开 发人员必须达到这样的层次,熟练掌握C语言的高级特性,才能够同时满足效率和灵活性、复 用性的要求。可惜,虽然C语言技术图书汗牛充栋,但是关注这个峰顶之域的作品却是屈指可 数。David Hanson的C Interfaces and Implementations就是个中翘楚。 David Hanson是业内大名鼎鼎的自由编译器lcc的合作者。在这个项目中,他负责提供高度四书五经:CSDN《程序员》四书五经专栏历年文章汇总 可复用的基础架构。在不断的实践中,他完全使用ANSI C形成了一整套可复用组件库。这套组 件库架构清晰,性能优异,而且提供了很多高级的特性,比如类Win32 SEH的异常处理机制、 可移植的线程库、高性能的内存池、丰富的可复用数据结构组件。David Hanson把他在创作这 些组件的过程中所积累的心得以及对其源码的精致剖析原原本本地写在了这本书里。这样的着 作,当然堪称C语言领域里的铭心绝品。难怪已故着名技术作家Richard Stevens对此书赞不绝 口,他说:“这本书中的技术,对于大部分C程序员来说,已经遗忘得太久了。”对于希望能在C 语言应用上达到最高层次的核心程序员而言,这本书是难得的必读之作。
其他 除了以上四本书以外,我还乐意推荐Andrew Koenig的着作《C陷阱和缺陷》(人民邮电出 版社)和Deitel父子合着的C How to Program两本书。 C陷阱和缺陷 Andrew Koenig是世界上屈指可数的C++专家,他的这本书可能是最薄的一本C语言经典。 它简明扼要地讲述了C程序设计中的陷阱和缺陷,包括词法陷阱、语法陷阱、语义陷阱、连接、 库函数、预处理器以及可移植性缺陷等,最后一章还给出了关于如何减少程序错误的建议以及 前面各章问题的参考答案。尽管这个小册子成书于C89标准制定之前,然而,即使到了C99早 已颁布的今天,书中提到的大多数陷阱和缺陷一如十五年前那样使我们警醒。 C程序设计教程 Deitel父子合着的C How to Program一直是非常好的C语言入门教程,我手头的中译本名为 《C程序设计教程》(机械工业出版社出版,原书第二版)。除了对技术的正规描述(辅以许 多简明扼要的例子)外,每一章后面都带有小结、术语、常见的程序设计错误、良好的程序设四书五经:CSDN《程序员》四书五经专栏历年文章汇总 计习惯、性能忠告、可移植性忠告、软件工程评述、自我测验练习及答案等。整书内容清晰, 组织良好,易于阅读和理解。值得一提的是,有许多入门书读完一遍即可扔掉,而这一本是个 例外。 结语 以上这几本书很大程度上局限于描述C语言及标准库本身,如果希望学习更专业的、领域 相关的C程序设计技术,你可以在选择阅读这几本书的基础上继续查阅专门书籍。此外,在C语 言书籍领域,水平不相上下的作品有很多,这几本只是根据我自身的阅读体验而做出的推荐。 我并不是一名C程序员,我的大多数时间都花在C的后裔语言尤其是C++身上了。然而,正 如你知道的那样,C++并不全是类和模板,不全是面向对象和泛型编程,在较低的层面,C++ 的各个实现一如既往在很大程度上兼容C。C++和C的亲密关系决定了每一本C语言经典都应该 是C++程序员的读物。 这世界变化得真是太快。各色新事物层出不穷,让人眼花缭乱、目不暇接。人们也很容易 被那些五光十色的花哨玩意儿所吸引,常常会忘记构筑过去、现在和未来的坚实基础。C语言 就是这样的基础之一。今天,世界上有许多我们看不见的重要软件是用C语言(以及C++等)编 写而成的,正是它们在默默地支撑着这个信息世界的运转。
⑶ 初学编程
首先,学这个,不能急,慢慢来
编写程序是一项系统而繁琐的工作,它不仅需要程序设计人员具有一定的功底,更需要有良好的编程习惯和风格。良好的编程习惯和风格不仅可以使程序代码更易于读懂和修改,更重要的是,它可以使程序的结构更加合理,有助于提高程序的执行效率。下面是我在程序设计中总结的一些经验,供大家参考。
设计顺序
在我们刚开始学习程序设计的时候,要编写一个程序,总是先进行一番构思,然后就一边写代码一边调试。这种方法一般只适用于非常小的程序,根据软件工程的特点,如果对所有程序都还按这种方法进行设计,是不合理的。
其实,设计程序就像我们盖高楼大厦,首先要设计图纸,然后动工。所以,对于个人编写程序来说,应遵循以下步骤:
1、问题分析:对我们要使用程序设计手段去解决的问题进行系统地分析,了解程序是做什么的,要达到一种什么样的效果等。
2、结构设计:也就是对程序的整体框架进行设计,设计出我们需要使用的模块等等,并画出流程图。
3、用户界面设计:在此,我们要设计出用于与用户交互的输入输出界面。
4、代码设计:在这个步骤中,我们要进行代码的编写。
5、调试:对程序中正在发生或可能发生的各种错误进行处理。
6、维护:通俗地说,维护就是对程序进行升级,对原有错误进行修改。
对于以上几个步骤,我想大多数人会认为代码设计最为重要,但如果程序的结构尚未清楚,我们在编写代码的时候就会发生混乱,一个程序性能的好坏,主要还是取决于它的结构是否合理。因此,在程序设计中,我们要尽可能注意这一点,这样才能使我们的程序更加完善。
设计环境
一个良好的编程环境可以使我们在编写程序时,不至于造成各种资源的紊乱,还可以避免资源的丢失。建议大家要在放源程序的目录下建立“Programs”文件夹;然后再以你要编写的程序名和版本为名建立一个文件夹,用于存放整个源程序以及各种资源;最后,分别建立几个文件夹,“Documents”:用于存放程序文档,包括流程图等;“Resource”:用于存放图片,声音,影片等资源;“Debug”:用于存放调试的程序。“Release”:用于存放最终释放的程序。
例如:我们要制作一个英语学习软件,名为“English”,版本为1.0,那么我们的编程环境中应存在以下文件夹:
[DRIVE]:\\…\\Programs\\English1\\Debug\\
[DRIVE]:\\…\\Programs\\English1\\Documents\\
[DRIVE]:\\…\\Programs\\English1\\Resource\\
[DRIVE]:\\…\\Programs\\English1\\Release\\
另外,最好再建立一个专门的文件夹,用于存放各种模块,以便能实现代码的重用,这样,我们就不用在每次写程序时,都重写所有的模块,编程速度会有很大的提高。
设计技巧
代码如果写得很乱,程序便不易被阅读与修改,所以,在编写代码时要注意以下几点:
(1)注释:写注释虽然要占用一定的时间,但在阅读和修改代码时却会节省很多的时间。所以,建议大家在定义一个函数时,在函数的第一行写出函数的作用,再用一行解释函数的参数,并在每个变量的定义语句后注释出其作用。
(2)变量和函数的命名:每个程序都会使用很多的变量和函数,如果随意命名变量与函数,每次使用时还得在变量或函数的定义语句处查出它的数据类型及名称,而且随意命名还会造成变量与函数重复定义。
建议大家使用匈牙利命名法,方法是:每个变量或函数的开头都以其数据类型的缩写命名,然后再加上代表这个变量或函数的作用的英文单词简写共同组成变量或函数的名称。例如:要定义用于计数的整型变量count,其定义语句为C\\C++:int icount; Basic:Dim icount as Integer。以这种方法定义,不仅可以有效地避免变量与函数的混乱与重复定义,还可以保证数据类型的匹配。
(3)控件命名:如果在Windows下编程,你有可能会大量地使用控件,如果不对控件名严加管理,会造成很大程度的混乱,因此,建议在给控件命名时,以控件类型缩写再加上代表这个控件作用的英文单词的简写共同组成此控件的名称。例如:你要命名一个按钮控件,作用是进行删除操作,那么控件名可以命名为cmdDel。
并不是每个人都能成为顶级程序员,但我们都在程序员之路上不断进步,追求更完美、更专业化的程序。不妨好好改造一下你的程序,你会从中感受到很多好处
/////////////////////////////////////////////////////////////////////
、《计算机组成原理》(熟悉)
2、《数据结构》(掌握)
3、《操作系统》(了解->熟悉)
4、《The C language》(掌握)
5、《编译原理》(了解原理)
6、《汇编语言》(了解)
7、《计算机网络》(了解)
8、《软件工程》(了解)
9、《关系数据库》(熟悉)
10、《The C++Languege 》(掌握)
11、《面向对象设计》(掌握;结合C++学习)
1、《The C Programming language》 (Keinighan & Dennis Ritchie 1988)
2、《The C++ Programming Languague》(Bjarne Stroustrup 1997)
3、《Inside The C++ Object Model》 (lippmans)
4、《Effective C++》 (同上)
5、《More Effective C++》 (同上)
6、《Exceptional c++》
7、《C++面向对象高效编程》
8、《设计模式》
9、《Thinking In C++》
10、《The Standard C++ Bible》(一般推荐)
11、《The Art of Computer Programming 》
12、《Programming Windows》 (Charles Petzold)
13、《VC++5.0技术内幕》
14、《MFC 深入浅出》
15、《软件需求》
16、《Advanced Windows》
17、《C++ primer》
18、《win32程序员参考手册》
19、《用TCP/IP进行网际互连》
20、《COM 本质论》
都是些学习编程的好书
⑷ C语言编程书籍
1.《C程序设计》 谭浩强 清华大学出版社
目前最新版本是第三版
配套的习题解答:《C程序设计题解与上机指导》
高质量C++/C编程指南
http://www.codeguru.cn/CPP/AdvanceC++-CProgramGuide/
应用C++技术构建优质软件
http://www.codeguru.cn/CPP/AppliedCpp/
C++编码规范与指导
http://www.codeguru.cn/CPP/C++CodingGuide/
C++PrimerPlus4th
http://www.codeguru.cn/CPP/C++PrimerPlus4th/
C语言函数示例集
http://www.codeguru.cn/CPP/CFunctionExamples/
C语言技术文章
http://www.codeguru.cn/CPP/CLanguageArticle/
C++疑难解答
http://www.codeguru.cn/CPP/CppAQ/
C++实践之路
http://www.codeguru.cn/CPP/CppInAction/
C++应用程序例解
http://www.codeguru.cn/CPP/CppProgramLiJie/
C++参考
http://www.codeguru.cn/CPP/cppreference/
C语言编程宝典之一
http://www.codeguru.cn/CPP/Cprogramdict/
C语言学习和精华文摘
http://www.codeguru.cn/CPP/CStudyAndArticle/
Effective C++
http://www.codeguru.cn/CPP/EffectiveCpp/
GenericProgramming
http://www.codeguru.cn/CPP/GenericProgramming/
TheCprogrammingLanguage
http://www.codeguru.cn/CPP/TheCprogrammingLanguage/
用VC开发ACTIVEX
http://www.codeguru.cn/VC&MFC/ActiveXProgramingWithVC/
用DirctX9进行高级3D游戏程序设计
http://www.codeguru.cn/VC&MFC//
21天学会VC数据库编程
http://www.codeguru.cn/VC&MFC//
STL轻松入门
http://www.codeguru.cn/VC&MFC/EasySTL/
COM+组件服务技术内幕
http://www.codeguru.cn/VC&MFC/InsideCOM+/
OGRE手册
http://www.codeguru.cn/VC&MFC/OGREManual/
OpenGL基础图形编程
http://www.codeguru.cn/VC&MFC/OpenGLJiChuTuXingBianCheng/
MFC程序设计
http://www.codeguru.cn/VC&MFC/progmfc2/
VC技术内幕
http://www.codeguru.cn/VC&MFC/ProgramingVC/
Windows核心编程
http://www.codeguru.cn/VC&MFC//
VC编程经验总结
http://www.codeguru.cn/VC&MFC/VCBianChengJianYanZongJie/
VC编程资料
http://www.codeguru.cn/VC&MFC/VCBianChengZiliao/
VC高级编程
http://www.codeguru.cn/VC&MFC/VCGaoJiBianCheng/
vchome图形图像编程技术篇
http://www.codeguru.cn/VC&MFC/vchomeGraph/
VC知识库
http://www.codeguru.cn/VC&MFC/vckbase/
vc++ 编程指南
http://www.codeguru.cn/VC&MFC/VCProgramGuide/
Windows程序设计
http://www.codeguru.cn/VC&MFC/WindowsProgramming/
Winsock程序员疑难解答
http://www.codeguru.cn/VC&MFC/WinsockProgrammerFAQ/
Microsoft编程精粹
http://www.codeguru.cn/VC&MFC/WritingCleanCode/
⑸ C程序员需要哪些书籍
算法设计阿软件工程阿面向对象阿数据库阿都应该学学。
⑹ 一般专业C语言开发程序员都做会看些什么书
不敢说专业c语言的程序员都干什么,谨谈谈我个人看法:
1:在PC届,ASCII
C早已经落伍了。Java,C#/C++,的份额很大
2:C语言大部分是接触硬件的,我们的嵌入式系统就是在C语言的光环下。
3:想学到C语言,别看国内的教材。《C现代方法》《C高级编程》(美)都不错
4:C语言是工具,更大的不是软件工具,而是硬件工具(要了解电子技术),他给硬件带来灵魂。
5:
有关硬件编程和嵌入式,欢迎交流。
⑺ 有经验的程序员来看:C\C++程序员需要掌握什么书籍
CC++与数据结构 ¥33.25元
本教材是计算机基础教学改革实践4年的总结,它将C语言、数据结构和C++综合为一门程序设计基础课程,可以不分专业,在大学一年级完成(授课80学时,实验80学时)。 本书可以作为各类人员学习C、数据结构和C++的综合教材。 ...
CC++程序设计入门与提高 ¥27.55元
精选着名流行软件,紧跟版本更新,连续推出配套图书;由“入门”起步,注重“提高”,使新霰手老手都能成为行家里手;根据用户实际使用的需要取材谋篇,着重技术精华的剖析和操作技巧的指点;明晰精练的风格、醒目的步骤提示和生动的屏幕画面使您如临操作现场。 ...
数据结构(C语言版) ¥21.85元
数据结构是计算机及相关专业的核心课程,是计算机程序设计的基础,是程序员和许多高校研究生入学考试的必考科目。本书共分10章,第1章是数据结构的概述;后9章分别介绍了线性表、栈、队列、串、数组、广义表、树、二叉树、图、查找、内部排序、外部排序、动态存储管理?...
C语言程序设计实践教程 ¥23.75元
本书是以C语言的入门级读者作为主要对象,根据C语言程序设计课程的特点,用编排独特、形式新颖、通俗易懂的方法编写的一本教材。全书包括3大部分。第1部分(第1章和第2章)介绍了C语言的基本框架、C语言的基本概念、函数的定义和使用、常量与变量的概念、C语言数据类型?...
C语言基础教程——基础理论与案例 ¥27.55元
本书全面系统地讲述了C语言的基本语法以及它们在编程中的应用,同时又介绍了编写C语言程序的一些方法和技巧。本书内容包含有C语言的词法、常量和变量、运算符和表达式、预处理功能、语句、函数和存储类、指针、结构和联合以及文件操作等内容。本书语言通俗,由浅入深?...
AVR 单片机C语言开发应用实例——TCP/IP篇 ¥53.20元
Ethernut是第一个推出的基于8位单片机的嵌入式以太网解决方案,并且公开了该方案的硬件电路和全部源代码,因此用户可以很方便地对Ethernut方案进行剪裁,定制出适合自己的以太网解决方案,在该方案的基础上进行二次开发,可以大大提高开发进度和降低出错概率。本书共?...
C语言程序设计应试辅导(二级) ¥34.20元
本书是根据教育部考试中心最新的全国计算机等级考试大纲(2004)编写的。本书共分为11章。主要内容有:二级公共基础,C程序设计的基础知识和简单语句,C程序中的控制结构,指针和函数的基本概念,数组,字符串,函数的进一步讨论,结构体、共用体和用户定义类型,文件, ...
嵌入式C语言编程与Microchip PIC ¥46.55元
本书全面系统地介绍了C语言编程技术及其在嵌入式微控制器中的应用,其中包括嵌入式C语言、PIC微控制器的硬件、标准I/O和处理器指令、CCSPICC C编译器和IDE、项目开发等各种技术,并在附录中扼要介绍了库函数和PIC微控制器编程。全书内容翔实、结构清晰、技术准确?...
程序设计抽象思想——C语言描述 ¥74.10元
本书全面介绍了数据结构的基础内容,帮助学生深入了解软件工程的思想和技术。学生还可以通过对一些高级编程概念(如接口、抽象和封装)的了解,为进一步深入学习高级编程知识打下坚实的基础。本书观点清晰明了、语言风格鲜明独特,深入浅出地介绍了一些高级主题。 ...
三级C语言上机指导 ¥20.90元
本书是依据教育部考试中心最新推出的《全国计算机等级考试三级考试大纲》关于上机考试的内容和要求编写的。全书共分为三章,主要包括三级上机考试应试技巧概述、上机考试题库分类解析和上机考试环境及程序调试等内容。本书结构清晰,内容详实,对三级C语言上机试题题?...
QBASIC语言程序设计 ¥20.90元
本书是根据教育部最新颁布的中等职业学校计算机及应用专业《QBASIC编程语言》基础教学基本要求编写,同时参考了教育部考试中心制定的计算机等级考试大纲。本书主要内容包括QBASIC语言的基础知识、基本概念、程序结构及程序设计方法、数组、函数和子程序、字符串、文件 ...
C语言真题分析与实战训练(二级) ¥20.90元
本书是根据2004年教育部考试中心对二级C语言程序设计考试内容调整后的新大纲要求而编写的,书中分为“应试策略”、“真题攻关”、“强化制胜”和“上机指导”4个部分。本书对2003年4月至2004年4月3套全国计算机等级考试的笔试真题试卷的题型、考点、分值比例等情况进行?...
AVR 单片机BASIC语言编程及开发 ¥21.85元
作为一种16/32位的高性能、低成本、低功耗的嵌入式RISC微处理器,ARM微处理器目前已经成为应用最为广泛的嵌入式微处理器。本书在全面介绍ARM处理器的体系结构、编程模型、指令系统和开发工具的同时,以Samsung公司的一款基于以太网系统的ARM处理器——S3C4510B为核心?...
全国计算机等级考试真题(笔试+上机)详解与样题精选(二级C语言) ¥30.40元
本书对近5年来全国计算机等级考试二级基础知识和C语言程序设计的真题进行了深入的分析,本书内容按教育部考试中心指定教程的章节分类编排,并按考试大纲的要求逐考点地对真题进行详细的分析,对相关知识点进行详尽的介绍。通过对真题的分类、分析和相关考点的理论链 ...
计算机图形学C语言版(第2版) ¥65.55元
本书介绍了设计与使用计算机图形学系统所必须的基本原理,讨论了图形学系统硬、软件及其应用,列举了C语言描述了编程实例以展示图形学算法的实现及应用,探讨了PHIGS、PHIGS+、GKS以及其他图珍库的特征。与第1版相比,在反走样、分形及其他物体表示法、光线跟踪、样 ...
三级C语言上机考试试题与题解 ¥19.95元
本书提供了30套最具典型性的全国三级C语言程序设计(信息管理技术、数据库技术、网络技术)上机考试过关试题,并给出与其配套的典型题解。主要内容包括:三级C语言上机考试概要,三级C语言上机考试基本导航,三级C语言上机过关试题与题解。本书深入浅出、简明扼要地 ...
C语言习题与解析(第2版) ¥23.75元
C语言是一种结构化、模块化、可编译的主流程序设计语言。作者编写的《C语言与习题解答》一书自1999年出版以来,受到了广大读者的关爱与好评。由于技术的发展和读者反馈的意见,本书作者对该书内容进行了扩充与修订。本书分为13章,分别介绍了C语言的基本概念、基?...
QBASIC语言(二级)难点、错点解析 ¥21.85元
本书根据教育部考试中心最新发布的《全国计算机等级考试大纲》的要求,由计算机等级考试考前培训班教师根据实际教学经验,专门为大、中专学生参加全国计算机等级考试而编写的考前辅导参考书。本书以对本课程有一定基础的读者为主,介绍有关的知识要点,并分别对笔 ...
程序设计基础(C语言) ¥27.55元
C语言是现代最流行的通用程序设计语言之一,它的简洁、紧凑、灵活、实用、高效、可移植性好等优点深受广大用户欢迎。C语言的数据类型丰富,它既具有高级程序设计语言的优点,又具有低级程序设计语言的特点;既可以用来编写系统程序,又可以用来编写应用程序。因此, ...
全国计算机等级考试系列辅导教材(二级)——C语言 ¥46.55元
本书共16章,其中第1章为学前自测与指导,从2-14章均包括“知识点讲析”、“补充与扩展”、“典型例题”和“本章练习”4部分,内容涉及计算机等级考试二级C语言的各个方面。第15章提供了3套笔试模拟试卷,第16章是上机指导。书后提供了各章练习题的参考答案。本书 ...
AVR系列单片机C语言编程与应用实例 ¥28.50元
本书针对Atmel公司的AVR系列单片机和ImageCraft公司的ICC AVR开发环境,详细地介绍了AT90LS8535的C语言程序设计。全书共有13章,其内容既涉及到了单片机的结构原理、指令系统、内容资源和外部功能扩展,又包含了单片机的编程工具——ICC AVR C编程器的数据类型、控?...
全国计算机等级考试系列辅导教材(二级)——Visual Basic语言 ¥46.55元
本书共15章,其中第2章-第13章均包括“知识点讲析”、“补充与扩展”、“典型例题”和“本章练习”4部分,第15章为上机考试指导。附录中提供了各章练习题的参考答案。本书针对性强,内容深入浅出,实例丰富,适用于报告计算机等级考试二级Visual Basic语言的读者:?...
二级C语言学与练 ¥20.90元
本书根据国家教育部考试中心 2002 年最新颁布的“全国计算机等级考试二级考试大纲(二级C语言)编写,书中以通俗易懂的语言全面详实地介绍 C 语言二级等级考试的重点和难点,从等级考试的角度精心设计出一系列富有代表性的例题和习题,其中包含了大量的等级考试试题 ...
中学生学C语言 ¥18.05元
本书包括入门篇、提高篇和应用篇3部分,通过对典型例题的分析和解答,以生动有趣而又科学准确的语言,讲述C语言的程序设计方法和语法现象,注重实用,突出重点,是一本专门为中学生编写的C程序设计教程。 ...
嵌入式处理器原理及应用——Nios 系统设计和C语言编程 ¥24.70元
本书以Altera工公司开发的Nios嵌入式处理器软核为例,介绍了嵌入式处理器的组成原理和开发应用。全书分为6章:第1、2章介绍嵌入式处理器的组成原理,主要介绍嵌入式处理器的系统组件;第3、4章介绍嵌入式处理器的开发环境,包括硬件开发环境和软件开发工具SOPC Buil ...
MPI 与 OpenMP 并行程序设计:C语言版 ¥48.45元
本书是美国Oregon州立大学的Michael J.Quinn教授在多年讲授“并行程序设计”课程的基础上编写而成的,主要介绍用C语言,并结合使用MPI和OpenMP进行并行程序设计,内容包括并行体系结构、并行算法设计、消息传递编程、Eratosthenes 筛法、Floyd 算法、性能分析、矩阵 ...
C语言程序设计教程 ¥18.05元
本书是为初学计算机程序设计的读者而写的,通过大量的实例较全面地介绍C语言的基本概念、语法和程序设计方法。全书共分9章。结构简洁明快:重点突出,通俗易懂;实例讲解条理清晰,逻辑性强;始终以程序设计为主线,注重培养学生程序设计的思维方式和技术;每章配以 ...
⑻ 程序员经典的书籍有哪些C/C++ 数据结构之类的求指导
c++基础:
《C++ primer》必看,现在到第五版了把。
《Accelerated C++》看2本基础书还是很有必要的。
c++晋级:
《深入探索c++对象模型》讲的是编译器如果构造c++对象,必看,好书不解释
《Effective C++》
《More Effective C++》
《c++必知必会》
以上三本教你如何更好,更高效的编写c++代码。
程序库
《泛型编程与STL》必看,泛型编程很重要啊
《STL源码剖析》这书比较难,没有扎实的基础不建议看。
算法和数据结构
最经典书籍当属《计算机程序设计艺术》,但是我不推荐,如果你非得看,而且看完了,记得给比尔盖茨发简历。
我只推荐两本《算法导论》和《算法艺术与信息学竞赛》,尤其是《算法导论》大师之作,里面的代码都是权威,非常值得学习
⑼ 介绍一本C语言的书,适合初学者
谭浩强的c语言
这是以前看到的一篇文章,感觉很好。不过里面很多说都绝版了上网慢慢找吧
程序员之路——如何学习C语言并精通C语言
程序员之路——如何学习C语言
学习C语言不是一朝一夕的事情,但也不需要花费十年时间才能精通。如何以最小的代价学习并精通C语言是本文的主题。请注意,即使是“最小的代价”,也绝不是什么捷径,而是以最短的时间取得最多的收获,同时也意味着你需要经历艰苦的过程。
一、要读就读好书,否则不如不读
所有初学者面临的第一个问题便是:如何选择教材。好的开始是成功的一半,选择一本优秀的教材是事半功倍的关键因素。不幸的是,学校通常会帮你指定一本很差劲的C语言课本;而幸运的是,你还可以再次选择。
大名鼎鼎的谭浩强教授出了一本《C语言程序设计》,据说发行量有超过400万,据我所知,很多学校都会推荐这本书作为C语言课本。虽然本人的名字(谭浩宇)跟教授仅仅一字之差,但我是无比坚定地黑他这本书的。这本书不是写给计算机专业的学生的,而是给那些需要考计算机等级考试的其它专业学生看的。这本书的主要缺点是:例子程序非常不专业,不能教给你程序设计应该掌握的思考方式;程序风格相当地不好,会让你养成乱写代码的恶习;错误太多,曾经有人指出过这本书的上百个错误,其中不乏关键的概念性错误。好了,这本书我也不想说太多了,有兴趣大家可以网络一下:)
Kernighan和Ritchie的《The C Programming Language》(中译名《C程序设计语言》)堪称经典中的经典,不过旧版的很多内容都已过时,和现在的标准C语言相去甚远,大家一定要看最新的版本,否则不如不看。另外,即使是最经典最权威的书,也没有办法面面俱到,所以手边常备一本《C语言参考手册》是十分必要的。《C语言参考手册》就是《C Reference Manual》,是C语言标准的详细描述,包括绝大多数C标准库函数的细节,算得上是最好的标准C语言的工具书。顺便提一句,最新的《C程序设计语言》是根据C89标准修订的,而《C语言参考手册》描述的是C99标准,二者可能会有些出入,建议按照C99标准学习。还有一本《C和指针》,写得也是相当地不错,英文名是《Pointers on C》,特别地强调指针的重要性,算是本书的一个特点吧。不过这本书并不十分适合初学者,如果你曾经学过C语言,有那么一些C语言的基础但又不是很扎实,那么你可以尝试一下这本书。我相信,只要你理解了指针,C语言便不再神秘。
如果你已经啃完了一本C语言教材,想要更进一步,那么有两本书你一定要看。首先是《C Traps and Pitfalls》(中译名《C陷井与缺陷》),很薄的一本小册子,内容非常非常地有趣。要注意一点,这本书是二十多年前写成的,里面提到的很多C语言的缺陷都已被改进,不过能够了解一些历史也不是什么坏事。然后你可以挑战一下《Expert C Programming》(中译名《C专家编程》),书如其名,这本书颇具难度,一旦你仔细读完并能透彻理解,你便可以放心大胆地在简历上写“精通C语言”了。
切记一个原则,不要读自己目前还看不懂的书,那是浪费生命。如果你看不懂,那你一定是缺失了某些必需基础知识。此时,你要仔细分析自己需要补充哪些内容,然后再去书店寻找讲述的这些内容的书籍。把基础知识补充完毕再回头来学习,才会真正的事半功倍。
二、Unix/Linux还是Windows,这是个很大的问题
不同的编程环境会造就出不同思维的程序员。Windows的程序员大多依赖集成开发环境,比如Visual Studio,而Unix程序员更加钟爱Makefile与控制台。显而易见,集成开发环境更容易上手,在Windows上学习C语言,只需要会按几个基本的Visutal C++工具栏按钮就可以开始写Hello, World!了,而在Unix下,你需要一些控制台操作的基本知识。有人也许认为Unix的环境更简洁,但习惯的力量是很大的,大家都很熟悉Windows的基本操作,而为了学习C语言去专门装一个Unix系统,似乎有点不划算。
对于一个只懂得Windows基本操作、连DOS是什么都不知道的新手而言,尽快做一些有趣而有意义的事情才是最重要的。用C语言写一个小程序远比学习ls、cat等命令有趣,况且我们要专注于C语言本身,就不得不暂时忽略一些东西,比如编译链接的过程、Makefile的写法等等等等。
所以我建议初学者应该以Visual C++ 6.0(不是VisualC++ .NET)或者Dev C++作为主要的学习环境,而且千万不要在IDE的使用技巧上过多纠缠,因为今后你一定要转向Unix环境的。Visual C++ 6.0使用很方便,调试也很直观,但其默认的编译器对C标准的支持并不好,而Dev C++使用gcc编译器,对C99的标准都支持良好。使用顺带提一下,很多大学的C语言课程还在使用Turbo C 2.0作为实验环境,这是相当不可取的,原因其一是TC 2.0对C标准几乎没有支持,其二是TC 2.0编译得到的程序是16位的,这对今后理解32位的程序会造成极大的困扰(当然,用djgpp之类的东西可以使TC 2.0编译出32位程序,不过那过于复杂了)。
等你学完一本C语言的教材,你一定要转向Unix平台继续学习,几乎所有的C语言高级教程都是基于Unix平台的(比如《C专家编程》)。转变的过程是痛苦的,你需要面对的是各种纷繁复杂的命令,完全不同于Windows平台的思考方式,但是这种痛苦是值得的。Unix与C是共生的,Unix的思考方式和习惯更加符合C语言的思考方式和习惯。在Unix下,你可以找到无数优秀的源代码供你尽情阅读,你可以方便地查看某个库函数的联机手册,还可以看到最优秀的代码风格
归结起来就是一句话:初学C语言,建议使用Windows系统和集成开发环境,在准备向“高手”方向努力时,请先转向Unix平台。
三、万事俱备,你就是东风
书已选定,环境配置完成,正所谓万事俱备,只欠你自己的努力了。请从书的前言开始,仔细地阅读手头的教材,很多人看书喜欢直接从第一章开始看,这是错误的做法。前言是作者对整本书的大体介绍,作者一般会告诉你需要什么基础才能够顺利阅读本书,这可以帮助你检验自己的基础知识是否已经具备。看完前言,还要浏览一下目录,了解一下书的整体结构,顺便给自己安排一下学习计划。
学习C语言,必需注意每一个细节,书上的例子代码一定要自己亲自敲一遍,编译执行输出都跟书上说的一致才能算是学完了一个例子,如果不一致,就要仔细找原因。出了书本上有的例子,自己还要“创造”一些例子,比如学习运算符优先级的时候,可以写几个相同的表达式,在不同的位置加上括号,看看有哪些不同的行为,比如*p++和(*p)++,又比如a = b == c、(a = b) == c和a = (b == c)等等。自己抄的书上的例子以及改造之后的例子,还有自己“创造”的例子,都应该仔细地归类保存,并且要在源代码中写上简短的注释,阐述这个例子的意图。
例子之后就是习题了,我建议初学者把所有的习题都独立做一遍,然后对照答案的代码,看看自己的代码有那些不足,再试着修改自己的代码。很多人不重视习题,这是极大的错误,因为作者通常会在习题中说明一些重要的道理,而不是单纯地检验前面的知识。
也许你认为这样学习太慢,其实不然。学得细致就不用走回头路,等你学到后面才发现自己前面没搞清楚,那才是真的得不偿失。一般说来,整本书读完,你应该完成数千行乃至上万行的代码,无论是原封不动照抄书上的,还是自己心血来潮写就的,都是今后继续学习的一笔财富。以我自己举例,阅读《Windows核心编程》时(我只阅读了3/4的内容),除了抄书上的代码,还自己写了很多例子,一共有5574行(用unix下的wc工具统计),时隔多日,我早已记不清Windows的系统编程了,但只要花几分钟翻出以前的代码看看,便会重新了然于胸。所谓好记性不如烂笔头,就是这个道理。
仔细读书、认真抄写源代码、独立完成习题外加更进一步的实验,最后将所有的代码留下,成为自己的经验和财富,绝对的辛苦,也绝对的事半功倍。当然,这种方式只适合学习需要精通的技术,如果不是学习C语言,你还要具体情况具体分析。
写到最后,还有非常非常重要的一点没有提及——代码风格,从最开始学习就必须强迫自己模仿最优秀的代码风格
⑽ C\C++程序员需要掌握什么书籍
c/c++程序员需要掌握的书籍大概可以分成几个方面:
计算机基础类书籍,这类书籍包括计算机组成原理、计算机网络、数据库、操作系统、数据结构与算法。
c/c++类专业书籍,这类书籍包括基础的C语言程序设计、C++primer。
扩展类书籍,c/c++相关扩展类,推荐的有C陷阱与缺陷、深度探索C++对象模型、effective C++。
平台扩展类书籍,这类就要看你在哪类系统下做开发,一般常用的系统平台是嵌入式、windows、Unix及ios(object C++),这类书籍就比较多了,可以按照个人需求选择。
按照上述推荐的理由是:
学习计算机语言需要一定的基础,这类基础是非常重要但是很无聊的,后续在做开发的时候会觉得非常实用。
学好语言其实不是非常麻烦的部分,一般的教材类书籍即可,重要而麻烦的是在敲代码的过程中去熟练掌握、运用和创新。
扩展类书籍3可以帮助你更深入的理解你所学到的东西,而深入理解是程序员进阶的必经之路。
平台类书籍略有区别,但是标准C++是一样的,只是针对各自平台做了相应扩展(objectc++除外)。如果需要在某个平台下做开发,或者学习再去学习使用即可。