作者:谭浩强
出版社:清华大学
出版社出版时间:2017年08月
ISBN: 9787302481447
版 次:5
页 数:370
字 数:603000
印刷时间:2017年08月01日
开 本:16开
纸 张:胶版纸
包 装:平装-胶订
由谭浩强教授著、清华大学出版社出版的《C程序设计》经过近三十年一千多万读者的实践检验,被公认为学习C语言程序设计的经典教材。根据C语言的发展和计算机教学的需要,作者在《C程序设计(第四版)》的基础上进行了修订,使内容更加完善,更易于理解,更加切合教学需要。本书按照C语言的新标准C 99进行介绍,所有程序都符合C 99的规定,使编写程序更加规范;对C语言和程序设计的基本概念和要点讲解透彻、全面而深入;按照作者提出的“提出问题—解决问题—归纳分析”三部曲进行教学和组织教材;本书的每个例题都按以下几个步骤展开:提出任务—解题思路—编写程序—运行程序—程序分析—有关说明。符合读者认知规律,容易入门与提高。 本书内容先进,体系合理,概念清晰,讲解详尽,降低台阶,分散难点,例题丰富,深入浅出,文字流畅,通俗易懂,是初学者学习C语言程序设计的理想教材,既可作为高等学校各专业的正式教材,也适合读者自学。本书还配有辅助教材《C程序设计(第五版)学习辅导》。
第1章程序设计和C语言11.1什么是计算机程序1
1.2什么是计算机语言1
1.3C语言的发展及其特点3
1.4小简单的C语言程序5
1.4.1小简单的C语言程序举例5
1.4.2C语言程序的结构9
1.5运行C程序的步骤与方法11
1.6程序设计的任务13
习题14
第2章算法——程序的灵魂15
2.1程序=算法 数据结构15
2.2什么是算法16
2.3简单的算法举例17
2.4算法的特性20
2.5怎样表示一个算法21
2.5.1用自然语言表示算法21
2.5.2用流程图表示算法21
2.5.3三种基本结构和改进的流程图25
2.5.4用N�睸流程图表示算法28
2.5.5用伪代码表示算法31
2.5.6用计算机语言表示算法32
2.6结构化程序设计方法33
习题35
第3章小简单的C程序设计——顺序程序设计37
3.1顺序程序设计举例37
3.2数据的表现形式及其运算39
3.2.1常量和变量39
3.2.2数据类型42
3.2.3整型数据44
3.2.4字符型数据47
3.2.5浮点型数据49
3.2.6怎样确定常量的类型50
3.3运算符和表达式51
3.3.1C运算符52
3.3.2基本的算术运算符52
3.3.3自增( )、自减(--)运算符53
3.3.4算术表达式和运算符的优先级与结合性53
3.3.5不同类型数据间的混合运算54
3.3.6强制类型转换运算符55
3.4C语句56
3.4.1C语句的作用和分类56
3.4.2小基本的语句——赋值语句58
3.5数据的输入输出64
3.5.1输入输出举例64
3.5.2有关数据输入输出的概念65
3.5.3用printf函数输出数据67
3.5.4用scanf函数输入数据74
3.5.5字符输入输出函数76
习题80
第4章选择结构程序设计83
4.1选择结构和条件判断83
4.2用if语句实现选择结构85
4.2.1用if语句处理选择结构举例85
4.2.2if语句的一般形式 87
4.3关系运算符和关系表达式89
4.3.1关系运算符及其优先次序90
4.3.2关系表达式90
4.4逻辑运算符和逻辑表达式90
4.4.1逻辑运算符及其优先次序91
4.4.2逻辑表达式92
4.5条件运算符和条件表达式94
4.6选择结构的嵌套96
4.7用switch语句实现多分支选择结构99
4.8选择结构程序综合举例102
习题107
第5章循环结构程序设计110
5.1为什么需要循环控制110
5.2用while语句实现循环111
5.3用do…while语句实现循环113
5.4用for 语句实现循环116
5.5循环的嵌套120
5.6几种循环的比较121
5.7改变循环执行的状态121
5.7.1用break语句提前终止循环122
5.7.2用continue语句提前结束本次循环123
5.7.3break语句和continue语句的区别124
5.8循环程序举例127
习题137
第6章利用数组处理批量数据139
6.1怎样定义和引用一维数组139
6.1.1怎样定义一维数组140
6.1.2怎样引用一维数组元素140
6.1.3一维数组的初始化142
6.1.4一维数组程序举例142
6.2怎样定义和引用二维数组145
6.2.1怎样定义二维数组146
6.2.2怎样引用二维数组的元素147
6.2.3二维数组的初始化148
6.2.4二维数组程序举例149
6.3字符数组151
6.3.1怎样定义字符数组151
6.3.2字符数组的初始化152
6.3.3怎样引用字符数组中的元素152
6.3.4字符串和字符串结束标志153
6.3.5字符数组的输入输出156
6.3.6使用字符串处理函数157
6.3.7字符数组应用举例162
习题165
第7章用函数实现模块化程序设计167
7.1为什么要用函数167
7.2怎样定义函数169
7.2.1为什么要定义函数169
7.2.2定义函数的方法170
7.3调用函数171
7.3.1函数调用的形式171
7.3.2函数调用时的数据传递172
7.3.3函数调用的过程174
7.3.4函数的返回值174
7.4对被调用函数的声明和函数原型176
7.5函数的嵌套调用179
7.6函数的递归调用181
7.7数组作为函数参数189
7.7.1数组元素作函数实参189
7.7.2一维数组名作函数参数191
7.7.3多维数组名作函数参数194
7.8局部变量和全局变量196
7.8.1局部变量196
7.8.2全局变量197
��7.9变量的存储方式和生存期201
7.9.1动态存储方式与静态存储方式201
7.9.2局部变量的存储类别202
7.9.3全局变量的存储类别205
7.9.4存储类别小结209
7.10关于变量的声明和定义211
��7.11内部函数和外部函数212
7.11.1内部函数212
7.11.2外部函数213
习题215
第8章善于利用指针217
8.1指针是什么217
8.2指针变量219
8.2.1使用指针变量的例子219
8.2.2怎样定义指针变量220
8.2.3怎样引用指针变量222
8.2.4指针变量作为函数参数224
8.3通过指针引用数组229
8.3.1数组元素的指针229
8.3.2在引用数组元素时指针的运算229
8.3.3通过指针引用数组元素231
8.3.4用数组名作函数参数236
��8.3.5通过指针引用多维数组243
8.4通过指针引用字符串254
8.4.1字符串的引用方式 254
8.4.2字符指针作函数参数258
8.4.3使用字符指针变量和字符数组的比较262
��8.5指向函数的指针265
8.5.1什么是函数的指针265
8.5.2用函数指针变量调用函数265
��8.5.3怎样定义和使用指向函数的指针变量267
��8.5.4用指向函数的指针作函数参数269
��8.6返回指针值的函数273
��8.7指针数组和多重指针276
8.7.1什么是指针数组 276
8.7.2指向指针数据的指针变量279
8.7.3指针数组作main函数的形参281
��8.8动态内存分配与指向它的指针变量284
8.8.1什么是内存的动态分配284
8.8.2怎样建立内存的动态分配284
8.8.3void指针类型 286
8.9有关指针的小结288
习题291
第9章用户自己建立数据类型293
9.1定义和使用结构体变量293
9.1.1自己建立结构体类型293
9.1.2定义结构体类型变量 295
9.1.3结构体变量的初始化和引用296
9.2使用结构体数组300
9.2.1定义结构体数组300
9.2.2结构体数组的应用举例301
9.3结构体指针303
9.3.1指向结构体变量的指针303
9.3.2指向结构体数组的指针304
9.3.3用结构体变量和结构体变量的指针作函数参数306
��9.4用指针处理链表309
9.4.1什么是链表 309
9.4.2建立简单的静态链表310
9.4.3建立动态链表311
9.4.4输出链表315
��9.5共用体类型317
9.5.1什么是共用体类型317
9.5.2引用共用体变量的方式318
9.5.3共用体类型数据的特点319
9.6使用枚举类型322
��9.7用typedef声明新类型名326
习题330
第10章对文件的输入输出331
10.1C文件的有关基本知识331
10.1.1什么是文件331
10.1.2文件名332
10.1.3文件的分类332
10.1.4文件缓冲区333
10.1.5文件类型指针333
10.2打开与关闭文件334
10.2.1用fopen函数打开数据文件335
10.2.2用fclose函数关闭数据文件337
10.3顺序读写数据文件338
10.3.1怎样向文件读写字符338
10.3.2怎样向文件读写一个字符串341
10.3.3用格式化的方式读写文本文件345
10.3.4用二进制方式向文件读写一组数据345
10.4随机读写数据文件350
10.4.1文件位置标记及其定位350
10.4.2随机读写 353
10.5文件读写的出错检测355
习题355
附录357
附录A常用字符与ASCII代码对照表357
附录BC语言中的关键字358
附录C运算符和结合性359
附录DC语言常用语法提要361
附录EC库函数365
参考文献371
说实话,在选择《C程序设计》第五版之前,我对比了很多同类书籍。我是一个计算机专业背景不强的学生,对于编程来说,更像是一个“门外汉”。我选择这本书,很大程度上是被它“十二五规划教材”和“学校教材”的标签所吸引。这让我觉得,这是一本经过教育界检验、并且被广泛使用的教材,内容应该更加系统、严谨,也更贴合教学需求。拿到书之后,我做的第一件事就是仔细研究目录。目录的设计非常合理,知识点由浅入深,循序渐进。从最基础的程序设计概念、C语言的开发环境介绍,到各种数据类型、运算符、表达式,再到流程控制语句(if-else、switch、while、for等)、函数、数组、指针、结构体、文件I/O等等,几乎囊括了C语言的全部核心内容。我特别喜欢书中对每一个概念的讲解方式。作者并没有使用过于晦涩的专业术语,而是用一种非常通俗易懂的语言来阐述。而且,每讲解完一个知识点,都会配以大量的代码示例,这些示例不仅展示了知识点的应用,而且都经过了作者的精心设计,非常具有代表性。我经常会一边看书,一边在自己的电脑上敲代码,尝试运行,甚至去修改其中的一些参数,看看会产生什么样的结果。这个过程让我对C语言的理解不再是停留在理论层面,而是有了更加直观的认识。我甚至在书中发现了一些之前网上学习C语言时没有注意到的细节,这让我觉得这本书的价值非常高。
评分说实话,在决定购买这本《C程序设计》第五版之前,我经历了相当一番“纠结”。作为一个非计算机专业的学生,我对编程的了解仅限于“听说过”,一直觉得它高深莫测,不敢轻易尝试。但随着专业学习的深入,我发现很多领域都需要用到编程思维和工具,于是我下定决心要“啃”下C语言这块硬骨头。这本书之所以最终成为我的选择,很大程度上是因为它的“亲民”定位。标题里“普通高等教育十二五规划教材”和“学校教材”这些标签,让我觉得它一定经过了教育界的严格审视,内容不会有太大偏颇,而且比较符合教学大纲的要求。收到书后,我迫不及待地翻阅。首先,书的排版和字体都非常舒服,长时间阅读也不会感到疲劳。最关键的是,它的讲解方式非常接地气。对于我这种完全的“小白”来说,很多概念一开始都是模糊的。但这本书的作者,似乎非常了解初学者的难点,用一种非常循序渐进的方式,把复杂的概念一点点拆解开来。比如,在讲解变量和数据类型的时候,书中用了非常形象的比喻,让我一下子就明白了不同数据类型的作用和区别。接着,对于运算符和表达式的讲解,也配有很多实际的计算例子,让我能亲眼看到代码是如何一步步执行计算的。我尤其喜欢书中的练习题,它们难度适中,既能巩固当天学习的知识点,又不至于让我产生挫败感。我还特别注意到了书中对于错误处理和调试的讲解,这对我来说非常重要,因为我预感自己在编程过程中会犯很多错误。总的来说,这本书就像一位耐心细致的老师,一步步引导我进入C语言的世界,让我觉得编程并没有想象中那么遥不可及。
评分坦白讲,我拿到这本《C程序设计》第五版的时候,内心是抱着一种“试试看”的心态。毕竟,市面上关于C语言的书籍琳琅满目,要找到一本真正适合自己的,真的需要点运气和缘分。这本书之所以吸引我,首先是因为它的作者——谭浩强教授,这个名字在C语言教学领域几乎可以说是家喻户晓,其著作的影响力也是不言而喻的。这让我对书的质量有了一个初步的信心。其次,从书名中的“包邮”和“普通高等教育十二五规划教材”等字眼,我能感受到它是一本被广泛认可和使用的教材,这对于我这种希望系统学习C语言的人来说,是一个重要的考量因素。收到书后,我花了一些时间去浏览它的内容。最让我印象深刻的是,这本书的知识点讲解非常扎实,并且逻辑清晰。从最基本的C语言语法规则,到数据类型、变量的声明与使用,再到各种运算符和表达式的运算规则,都讲解得非常透彻。特别是对于一些初学者容易混淆的概念,比如指针和数组的关系,书中都给出了详细的解释和大量的实例,这对于我这种需要反复理解才能掌握知识点的人来说,简直是福音。而且,书中不仅仅停留在概念的讲解,更注重通过大量的编程实践来巩固学习。每一个章节后面都附有精心设计的例题和习题,这不仅帮助我检验学习成果,更能让我将理论知识转化为实际操作能力。我甚至尝试着去修改书中的一些代码,看看会发生什么,这个过程让我对C语言有了更直观的认识。总的来说,这本书的“厚重感”和“实在感”让我觉得,这是一本值得花时间和精力去研读的优秀教材。
评分在决定购买这本《C程序设计》第五版之前,我花了不少时间在网上浏览各种C语言教材的评价。最终,我选择了这本书,主要原因在于它的“权威性”和“实用性”。“普通高等教育十二五规划教材”、“学校教材”这些标签,让我觉得这本书的内容一定是经过了严格的筛选和验证,能够提供扎实的基础知识。作为一个对编程一知半解的新手,我最需要的是一本能够系统地、循序渐进地引导我学习的教材,而这本书恰好满足了我的需求。收到书后,我立刻被它丰富的内涵所吸引。书中从最基础的程序设计概念讲起,逐步深入到C语言的各种语法规则、数据结构、算法等。我特别欣赏书中对每一个知识点的讲解方式。作者没有使用过于生僻的词汇,而是用一种非常清晰、简洁的语言来阐述。同时,书中配有大量的代码示例,这些示例不仅能够帮助理解抽象的概念,更重要的是,它们都是一些非常贴近实际应用的例子。我经常会一边看书,一边在电脑上敲代码,尝试运行,并且去思考这些代码是如何工作的。这个过程让我对C语言的理解不再是停留在理论层面,而是有了更加直观的体验。这本书就像一位经验丰富的老师,耐心地带领我一步步探索C语言的奥秘。
评分购买这本《C程序设计》第五版,纯粹是因为它的“名气”和“地位”。在选择C语言教材时,我几乎是“盲选”,看到“谭浩强”、“十二五规划教材”、“学校教材”这些字眼,就觉得“没错,就是它了”。我本人是对计算机科学非常好奇,但又没有任何基础,所以选择一本“官方认证”的书籍,至少能让我安心一些,不至于走弯路。拿到书后,我的第一印象是它很“厚实”,内容量应该不小,这让我既感到压力,又充满期待。翻开目录,我发现知识点的覆盖面非常广,从最基础的C语言发展史、程序设计基本概念,到各种数据类型、运算符、表达式,再到控制流语句、函数、数组、指针、字符串、结构体、文件操作,几乎你能想到的C语言核心知识点,它都包含了。我最欣赏的是这本书的讲解风格,它非常务实,语言朴实无华,但每一个概念的解释都力求清晰明了。对于初学者来说,最头疼的往往是那些抽象的概念,比如指针。但这本书对指针的讲解,虽然我还没有完全消化,但感觉比我之前在网上看到的一些资料要系统和易懂得多。而且,书中大量的例题和课后习题,是它最大的亮点之一。我喜欢自己去尝试解决这些问题,即使有时候会卡住,但当我最终找到解决方案时,那种成就感是无与伦比的。这本书让我觉得,学习C语言并非遥不可及,只要肯花时间和精力,一步一个脚印,总能掌握。
评分我是在一个朋友的推荐下,才开始关注这本《C程序设计》第五版的。我的朋友说,这本书是他们大学时候的经典教材,虽然已经出了新版,但依然是很多程序员入门的首选。我本身对编程一直很好奇,但又觉得无从下手,所以就抱着试试看的心态购买了。拿到书后,我被它的内容所震撼。这本书的内容非常全面,从最基础的“Hello, World!”程序开始,一步步讲解了C语言的方方面面。我尤其喜欢它对指针的讲解,之前一直听说指针很难,但在书中,作者用了一种非常系统和易于理解的方式来阐述,让我觉得不再那么可怕。而且,书中大量的代码示例,对于我这样的初学者来说,简直是“及时雨”。我可以通过运行这些代码,直观地感受到C语言的强大之处。我还经常尝试着去修改书中的代码,看看会有什么不同的结果,这个过程让我对C语言有了更深入的理解。除了代码示例,书中的习题也是一大亮点。它们难度适中,能够帮助我巩固所学的知识,并且让我能够将理论知识应用到实际中去。总而言之,这本书是一本非常优秀的C语言入门教材,它不仅内容丰富,而且讲解通俗易懂,非常适合想要学习C语言的读者。
评分说实话,我当初选择这本《C程序设计》第五版,更多的是出于一种“跟风”的心态。毕竟,这本书的名字在C语言学习圈子里几乎是“响当当”的。作为一个想要踏入编程世界的新人,我被它“十二五规划教材”、“学校教材”这些身份所吸引,觉得应该不会错。拿到书后,我花了一些时间去粗略地浏览了一下。这本书的厚度着实让我有些“望而生畏”,但同时也充满了期待。最让我感到欣慰的是,它的内容编排非常合理。从最基础的C语言概述、开发环境搭建,到变量、数据类型、运算符、表达式、控制流程、函数、数组、指针、结构体、文件操作等等,知识点覆盖得相当全面,而且逻辑性很强,感觉是为初学者量身定制的。我尤其喜欢书中对每一个概念的解释方式。作者没有采用那种“高高在上”的理论叙述,而是用一种比较平实、易懂的语言进行讲解,并且配有大量的代码示例。我经常会自己动手去写这些例子,运行它们,观察输出结果,甚至去尝试修改其中的一些细节,看看会发生什么。这个过程让我觉得学习C语言不再是枯燥的理论学习,而是一个充满探索和实践的过程。而且,书中提供的练习题,也让我能够及时检验自己的学习成果,并且发现自己可能存在的薄弱环节。总的来说,这本书的“实操性”和“全面性”让我觉得,它绝对是一本值得认真研读的C语言入门教材。
评分最近入手了这本《C程序设计》第五版,算是了却了我一直以来想学C语言的心愿。市面上C语言的书籍太多了,挑花了眼。最终选择这本书,主要还是看中了它的权威性和普及度。“十二五规划教材”、“学校教材”这些字眼,给了我一种“官方认证”的感觉,觉得内容应该是经过了市场的检验,质量有保障。拿到书后,我立刻开始阅读。这本书的优点在我看来有几个方面:首先,它的知识体系非常完整。从最基础的C语言的开发环境搭建,到各种基本语法,再到函数、数组、指针、结构体、文件操作等等,几乎涵盖了C语言的全部核心内容。而且,每个知识点都讲解得很透彻,不会让人觉得“一带而过”。其次,书中的例题非常丰富,而且质量很高。这些例题不仅能帮助理解抽象的概念,更重要的是,它们都是一些非常实用的编程小例子,能够让我很快地将学到的知识应用到实际中去。我经常会尝试着自己动手去敲代码,去修改例题中的一些参数,看看结果会有什么变化,这个过程让我对C语言的理解更加深刻。另外,书中的语言风格也比较严谨,但又不失易懂。作者在讲解一些比较难的概念时,会用一些通俗易懂的类比,这对于我这样的初学者来说,非常友好。我特别留意了书中关于指针的讲解,这是C语言的一大难点,但这本书的处理方式让我觉得清晰了很多。总而言之,这是一本非常适合想要系统学习C语言的读者,尤其是初学者的教材。
评分刚拿到这本《C程序设计》第五版,就迫不及待地翻开看了。选择这本书,主要是因为它名字里自带的“权威”光环——“普通高等教育十二五规划教材”、“学校教材”,这些标签让我觉得这是一本经过国家认可、并且在高校中广泛使用的教材,内容应该是非常可靠和系统的。作为一名对编程一窍不通的“小白”,我最看重的就是教材的循序渐进性和易理解性。这本书在这方面做得相当不错。它从最最基础的C语言环境搭建讲起,然后逐步深入到变量、数据类型、运算符、表达式等基本概念。我特别喜欢书中对每个概念的解释方式,不是那种干巴巴的理论堆砌,而是配有大量清晰的代码示例,并且会一步步地解析代码的运行过程。我经常会一边看书,一边打开编译器,跟着书中的例子敲代码,然后运行、调试。这个互动式的学习过程,极大地加深了我对知识点的理解。比如,在讲解循环结构的时候,书中不仅给出了`for`、`while`、`do-while`的语法,还用一些经典的例子,比如打印等腰三角形、计算阶乘等等,让我能够直观地感受到循环的魅力。而且,书中的习题设计也很有针对性,能够帮助我巩固和检验学习效果。虽然我还没有完全读完,但已经觉得这本书是我的C语言学习之旅中一个非常好的起点。
评分这本《C程序设计》第五版,是我最近购入的一本计算机入门书籍,说实话,在选择这本书之前,我确实是花了不少时间去研究市面上各种C语言的教材。作为一个对编程完全陌生的新手,我最看重的是教材的易懂性和系统性。这本书的标题就显得非常“实在”,一看就知道是面向初学者的,而且“十二五规划教材”和“学校教材”的标签,也让我觉得这本书的权威性和实用性应该是有保障的。我当初抱着一种“就它了”的心态下单,主要是觉得它的内容覆盖面应该会比较广,从最基础的C语言语法,到一些更深入的应用,应该都能有所涉及。收到书之后,我迫不及待地翻看了目录,感觉内容编排得非常有条理,从最基础的变量、数据类型开始,循序渐进地讲解了运算符、表达式、控制流程、函数、数组、指针等等,这些都是C语言学习中必不可少的基础知识。而且,我特别注意到,书中对每一个概念的解释都比较细致,并且配有大量的代码示例。对于我这种零基础的学习者来说,这些代码示例简直是救命稻草,我可以通过运行这些代码,直观地理解抽象的概念,而不是死记硬背。书中的讲解风格也比较平实,没有太多花哨的辞藻,而是用最直接、最清晰的方式来传递知识。当然,我还没完全看完,但初步的阅读体验让我觉得,这本书的价值远不止于它的价格。我非常期待能够通过这本书,一步步构建起我对C语言编程的认知框架,为我以后深入学习其他编程语言打下坚实的基础。
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 book.idnshop.cc All Rights Reserved. 静思书屋 版权所有