新書推薦:
《
中国近现代名家精品——项维仁:工笔侍女作品精选
》
售價:HK$
66.1
《
宋瑞驻村日记(2012-2022)
》
售價:HK$
115.6
《
汗青堂丛书138·帝国的切口:近代中国口岸的冲突与交流(1832-1914)
》
售價:HK$
127.4
《
人世事,几完缺 —— 啊,晚明
》
售價:HK$
115.6
《
樊树志作品:重写明晚史系列(全6册 崇祯传+江南市镇的早期城市化+明史十二讲+图文中国史+万历传+国史十六讲修订版)
》
售價:HK$
498.0
《
真谛全集(共6册)
》
售價:HK$
1156.4
《
敦煌通史:魏晋北朝卷
》
售價:HK$
162.3
《
唯美手编16:知性优雅的编织
》
售價:HK$
54.9
|
內容簡介: |
本书是学习C语言的入门书籍,内容非常全面,包含C语言基础知识、流程控制、数组、函数、指针、字符串、结构体、链表、文件操作、栈和队列、自定义头文件、多文件编译、Linux下C文件的编译和链接、链接库等知识点。本书并不单纯讲解理论,还配有大量的程序,每个知识点都结合程序解讲。这样读者理解起来更加容易,也能够在遇到实际问题时进行编程。本书主要针对学习C语言的初学者,即使完全没有编程基础,也能够通过阅读本书快速掌握C语言的核心知识。
|
目錄:
|
第1章 为什么要学习C语言?11.1 C的起源和发展11.1.1 计算机语言发展的三个阶段11.1.2 语言运行速度的比较31.1.3 C语言的演变过程31.2 C的特点51.2.1 C语言的优点51.2.2 C语言的缺点61.3 C的应用领域71.4 C的重要性81.5 本章总结9第2章 怎样学习C语言?102.1 学习C语言的心得102.2 学习C语言的目标122.3 常见问题答疑132.3.1 学习Java为什么建议先学C语言?132.3.2 没学过计算机专业课程能够学懂C语言吗?142.3.3 英语和数学不好能学好C语言吗?142.4 本章总结16第3章 Microsoft Visual C 6.0的使用173.1 为什么要学习VC6.0?173.2 如何创建编程文件?173.3 写一个最简单的程序223.4 要养成时刻按Ctrl S保存的习惯253.5 编译-链接-执行253.6 怎样运行第二个程序?283.7 点编译-链接-执行时保存路径下的文件夹有什么变化?303.8 如何编写多文件程序?313.9 如何用VC6.0调试程序?383.10 本章总结40第4章 C语言认知,先给大家写一个程序42第5章 预备知识475.1 CPU、内存条、硬盘、显卡、主板、显示器之间的关系475.1.1 电影是如何运行起来的?475.1.2 CPU为什么不能直接操作硬盘却能直接操作内存?475.1.3 内存条的速度为什么比硬盘的速度快?475.1.4 为什么不把内存条造的跟硬盘一样大?485.1.5 CPU是如何操作内存的?485.1.6 主板的作用495.2 HelloWorld程序是如何运行起来的?495.3 字节505.3.1 什么是字节?505.3.2 字节换算505.3.3 字节总结515.4 进制515.4.1 什么是进制?515.4.2 进制转换口算法535.4.3 进制转换公式法545.4.4 人类为什么最习惯用十进制?575.4.5 计算机为什么用的是二进制?585.4.6 进制总结585.5 数据类型595.5.1 数据类型的分类595.5.2 基本数据类型及其所占的字节数615.6 常量635.6.1 整型常量645.6.2 浮点型常量645.6.3 字符型常量665.7 常量是以什么样的二进制代码存储在计算机中的?675.8 补码675.8.1 原码和反码685.8.2 补码的两个核心内容685.8.3 int型变量所能存储的范围705.8.4 int型变量和char型变量是如何进行相互赋值的?725.9 什么是ASCII码?735.10 变量745.10.1 如何定义变量?745.10.2 变量的本质775.10.3 为什么要使用变量?785.10.4 变量的命名规则785.10.5 变量为什么必须要初始化?805.10.6 变量总结835.11 各类型数据之间的混合运算845.12 代码规范化865.12.1 代码如何写才能写规范?865.12.2 代码规范化的好处865.12.3 代码规范化的七大原则875.12.4 代码规范化总结915.13 本章总结91第6章 printf的用法926.1 printf的格式936.2 输出控制符956.3 %x、%X、%#x、%#X的区别956.4 如何输出%d、\和双引号?966.5 本章总结97第7章 scanf的用法987.1 scanf的用法987.2 使用scanf注意事项1017.2.1 参数的个数一定要对应1017.2.2 输入的数据类型一定要和所需要的数据类型一致1027.2.3 使用scanf之前使用printf提示输入1057.3 本章总结105第8章 运算符和表达式1078.1 算术运算符1078.2 关系运算符1098.3 逻辑运算符1098.4 赋值运算符1138.5 运算符的优先级1148.6 本章总结115第9章 选择结构程序设计1179.1 流程控制1179.1.1 什么是流程控制?1179.1.2 流程控制的分类1179.2 选择的定义和分类1189.3 if语句1189.3.1 if最简单的用法1189.3.2 if的范围问题1209.3.3 if...else...的用法1229.3.4 if...else if...else...的用法1249.3.5 if 举例--求分数的等级1259.3.6 if 举例--三个整数从小到大排序1309.3.7 if的常见问题解析1329.4 switch语句1369.5 本章总结138第10章 循环控制14010.1 循环的定义和分类14010.2 for循环14010.2.1 for语句的格式14010.2.2 自增和自减14410.2.3 练习:编程输出1! 2! 3! n!的和14510.2.4 for和if的嵌套使用14610.2.5 强制类型转换14910.2.6 浮点数的存储所带来的问题15510.2.7 多个for循环的嵌套使用15910.2.8 for循环嵌套编程练习16210.3 while循环17310.3.1 while的执行顺序17310.3.2 while和for的比较17410.3.3 如何看懂一个程序试数17610.3.4 do...while18010.3.5 break和continue18510.4 清空输入缓冲区18710.4.1 输入缓冲区18710.4.2 %d和%c读取缓冲区的差别18910.4.3 用scanf吸收回车19110.4.4 getchar19210.4.5 fflushstdin19610.5 本章总结198第11章 数组20011.1 一维数组的使用20011.1.1一维数组的定义20011.1.2 一维数组的初始化20111.1.3 一维数组元素的引用20411.1.4 如何将数组a赋给数组b?20511.1.5 如何编程获取数组的长度?20611.1.6 练习20811.1.7 宏定义:#define21111.1.8 一维数组总结21411.2 数组倒置算法21411.3 数组查找算法21711.3.1 顺序查找21711.3.2 折半查找21811.4 数组插入、删除算法22111.4.1 插入算法22111.4.2 删除算法22211.5 数组
|
內容試閱:
|
Preface 前言 当你拿起本书翻到这一页时,不管最后买与不买,都要对你说声谢谢,相遇就是缘分。为什么要写这本书本书是我人生中写的第一本书,基于我学习C语言的笔记。我从大学本科的时候开始学习C语言,每每学到新的知识或有心得体会时便记下来,就同写日记一样。就这样断断续续一直持续到硕士研究生阶段,那时差不多写了7万多字。我会将自己的笔记分享给很多想学C语言的师弟师妹。在学习的过程中他们发现,我的笔记比其他C语言书籍都更易于理解,讲得通俗易懂,风趣幽默。虽然当时只有7万多字,内容有限,但他们都认为绝对是入门的好书。所以我的前期读者以及专业导师都希望我能出版这些笔记。但我觉得还不够好,内容还不够充实,也怕误人子弟,浪费读者时间,毕竟当时水平有限。但这却在我心里埋下了一颗想要写一本好书的种子。硕士研究生毕业后我应聘到上海起策教育科技公司工作,而我教授的第一门课就是C语言。从此我正式开始了与C语言全天候、长时期的亲密接触,也正式开启了我要将这本书写好的历程。在工作中,我有很多心得体会,或跟同事交流,或得益于很多前辈的教导。于是通过不断地补充,原先的7万多字变为现在的34万多字。在这个过程中我不断地对它精雕细琢,就像培养一个优秀的孩子一样,只希望能展现给大家一份优秀的作品。现在我觉得时机到了,可以让它为更多想学好C语言的读者做贡献了。本书内容本书是学习C语言的入门书籍,所以一开始对C语言的铺垫很充分,循序渐进,目的是让大家对C语言不再陌生,轻松愉快地学习。本书的内容对于入门来说是非常全面的,包括C语言基础知识、流程控制、数组、函数、指针、字符串、结构体、链表、文件操作等主流知识。这几个知识点是学习C语言的主要框架,对于不同的C语言书籍,区别就在于讲得是否详细,是否能让每位读者都掌握。本书中这几个知识点都讲得非常详细、透彻,是经过无数学弟学妹检验过的,也期待着读者的检验。除此之外,本书还增加了很多在工作中需要用到的其他知识,如栈和队列、自定义头文件、多文件编译、Linux下C文件的编译和链接、链接库等。本书特色因为本书基于我的学习笔记,所以本书更多的是以初学者的角度编写的,而且后来一直延续了这种风格,抛开高大上、生涩的专业术语,用词通俗易懂。因为本书的很多内容是我在参加工作之后总结的,所以都是根据实际工作的需要整理而成。摒弃了脱离实际工作、过时的、不用的、变态的用法,大大减轻了读者学习的压力,除去了学习道路上的杂草,铺设了一条更好走的捷径。此外,本书并不是单纯地讲理论,而是配有大量的程序。每个知识点都是配合程序讲解的,这样理解起来就更加容易。而且本书没有那种单独的、无答案的课后练习题,所有的练习都直接以程序的形式写在书中,读者在学习的时候直接练习那些程序即可,而且每个程序都是经过编译可以直接运行的。此外本书不会提供电子版的代码,因为学习C语言必须要多动手、多敲代码,所以我希望读者自己动手。最后真切地希望本书能成为你编程路上的重要伙伴,为你的成长打下深厚的编程功底。虽然我可能不是最好的,但我绝对是最用心的。限于作者水平有限,书中难免存在不当或疏漏之处,恳请读者批评指正,并多提出宝贵意见。希望在你的帮助下本书一步步接近完美,谢谢!吴明杰2016年9月
|
|