C语言怎么自学?

本人零基础,只会玩游戏那种。有没有什么入门到精通的书籍套餐?谁给推荐下... 本人零基础,只会玩游戏那种。有没有什么入门到精通的书籍套餐?谁给推荐下 展开
 我来答
丨小e丨
2020-04-15 · TA获得超过346个赞
知道小有建树答主
回答量:538
采纳率:90%
帮助的人:26.7万
展开全部
现在,市面上的 C语言书籍多的数不过来,但是很多不适合你这种初学者使用,作为一名老程序员,我给你推荐几本我看过认为还不错的书:
1) 《C语言小白变怪兽》:既适合对计算机一窍不通的小白,也适合有编程基础的读者,还可以用来进阶。同时,最重要的是,这本书的作者还在不断地更新这本书,我认为最大的特点是通俗易懂,深入浅出,只要认真看,就一定能看懂,我认为这是C语言入门的首选教材,吐血推荐,经典中的经典!!!
2) 《啊哈C语言》:适合对计算机一窍不通的纯小白,有编程基础的读者请忽略。这本书语言幽默,生动形象,通俗易懂,给人耳目一新的感觉,但是这本书非常浅显,并不深入,所以适合纯小白入门,找到门以后也就扔了。这本书着重于语言艺术,针对纯小白下足了功夫,小学生坐在马桶上都能学会编程。说实话,我非常欣赏作者的创意和用心,国内像这样写书的少之又少,入门的书就应该是这个样子。
上边这两本书是我推荐给你用于C语言入门的,我不建议你使用谭浩强的《C语言程序设计》这本书入门,虽然这本书的知名度很高,因为很多大学把它作为C语言的授课教材,然而,这本书被吐槽最多,不但代码不标准,而且有很多错误,据说可以找出几十个错误,这样很容易误导你这种小白。
等你有一定的C语言基础了,可以看下面的这几本书,进一步提升你的编程水平:
1) 《C Primer Plus》:畅销 30 余年的C语言入门经典书籍,至今无人能撼动它的地位,它是最符合C语言标准的书籍,作为一名C语言程序员,不收藏一本都觉得自己很水。
2) 《C程序设计语言,The C Programming Language》:C语言创始人丹尼斯·里奇(Dennis MacAlistair Ritchie)的著作,和《C Primer Plus》并驾齐驱,很难分出伯仲,这两本书都是一样的优秀,都是C语言程序员必须收藏的。
3) 《C专家编程》:适合已经具备C语言基础、想进阶的读者。这貌似是一本吐槽C语言的书,基本上介绍了大多数C语言的坑,有不少精髓,在C语言界久负盛名,进阶时一定要看。
4) 《C陷阱与缺陷》:和《C专家编程》类似,也是给C语言挑刺的,阐述了很多容易让人误解的语法细节,重在帮助C程序员绕过编程过程中的陷阱和障碍。
5) 《程序员的自我修养 -- 链接、装载与库》:这真是一本深入骨髓的书,让你彻底明白程序的编译、链接、装载和运行的全过程,你会从此上天,拉开和别人的差距,看任何问题都有了深度和高度。重点推荐!
在学习编程的过程中,多去参加一些程序设计比赛对学习是特别有帮助的,而且获奖的话得了证书对自己也有好处。
追问
C语言小白变怪兽哪里有卖啊!淘宝没找到
靖央捷颖馨
2020-04-20 · TA获得超过3885个赞
知道大有可为答主
回答量:3138
采纳率:28%
帮助的人:383万
展开全部
你是文科生,那你学英语学得一定还不错吧!?我想,学C语言和学英语差不多啦,要了解它的语法结构,把你的要求用C语言译过来就是一个完整的程序。下面我说具体的:
<1>先去了解数据的类型;
{
如int为整型(其实就是整数罢了,只不过数值大小不能太大),float为浮点型(也是小数)等。}
了解了这些不同的数据类型是必要的,这是基础。但是如果不能理解,就先记住,因为这些是常用的,以后慢慢就了解它们的意思了。
<2>了解printf()和scanf();
你是刚学,就了解这两个(前一个是用于输出的,后一个是用于输入的)就够了,你怎么学它两呢,问老师同学都行。我呢,是自己学的,我先用它两输出(入)各种类型的数据(分别输入了整型、浮点型、字符型等等),能熟练的输出(入)简单的数据后,我才进行了一些较复杂的输入(出)的操作(是看着书上的介绍做的)。没多久就好了。
<3>了解if……else……语句
用上面的基础的if……else……做“输入两个数,然后输出较大的数”这个实例,了解它的原理后再做“输入三个数,然后输出最大的数”就行了。这个实例可能与你老师教的实例重复了,但要相信这种简单的思路是有效的,不能只做出来,要理解它是怎么回事(我建议你做出来之后过两天再看一遍,共看三遍或更多遍,因这些东西都是相通的,了解了其中的原理,其它的实例大多都是简单实例的拓展,而原理就这么多)。
<4>学会for循环;
for循环是在很多语言中起着灵魂作用的,必有学会。学它的过程比较自在了,也就是方法比较多。我说个方法吧:
用它先输出10个*(按住键盘上的shift,再按主键盘区上的数字8,就能打出*这个字符了);
然后让用户输入一个数字n,再输出n个*;
再动态输出(也就是说,根据用户输入的数字的不同,输出的结果也不同。再不明白就问老师什么叫动态输出。)以下内容(以下以用户输入数字4为例):
****
(四行四列)
****
****
****
*
(四行,第一行为一个*,以后的行每一行多一个*)
**
***
****
*
(四行,第一行为一个*,以后的行每一行多一个*,但是每行有相应空格)
**
(也是直角三角形。再向后就不说明了)
***
****
*
***
*****
*******
*
***
*****
*******
*****
***
*
完成这些后就对for循环有了较深入的了解了吧,我相信是这样。
<5>去了解数组的使用,这个也很重要,但解说比较……所以就……你可以自学的,我相信;
<6>以上内容完成以下实例;
1、输出100-1000内的素数(之后动动态输出素数)
2、动态输出一个年份是否为闰年
3、找些你上高中时的简单的数列(如:Sn
=1+2+3+4+5+……)用C语言实现这个通项(用户输入1,就输出S1,用户输入10就输出S10)
<7>完成这些并学会了这些,我相信,你就已经偷偷的迈进了计算机的程序内部了(当然,这么说是夸张的很啦),你大概就走了初学者的行列,需要进一步学深入了,之后就是你自己的事喽。
我是软件工程专业的,第一门计算机语言就是学地C,多半以后用不到它,但是它是很重要的一课,你能真的了解好C,学什么javascript,php,C#等等语言时就容易多了,这些都相通。学这些,我自认为还是比较有意思的!^-^
还有就是信心要足呀!你说:“感觉学起来特别吃力”。这么说不好,你该说:“感觉学起来特别‘给力’”!!!学吧,有意思着呢,而且没什么难的,我觉得!!!
好了,就先简单说这些了。而我的水平,你不用怀疑,大概是个菜鸟,实在拿不出手。但是要记得:刚开始是感觉难,了解了就好了。这是不会错了!!^-^
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
念玉毕巧蕊
2020-05-20 · TA获得超过3982个赞
知道大有可为答主
回答量:3064
采纳率:32%
帮助的人:206万
展开全部
看谭浩强版的c语言,经典教材,自己遍点小东西,然后做小项目,然后找例子读懂了照着做,最后就是上班实践了.祝你成功~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
月流123
2020-04-15 · 超过45用户采纳过TA的回答
知道小有建树答主
回答量:357
采纳率:44%
帮助的人:68万
展开全部
其实很简单,但是你要找一本书,很基础的书,然后去一点点去读,读得越多,你会发现越来越简单了,当然,高级的部分的C语言还是需要有一些精力和水平才能学会的。自己多加练习,哪怕就是书上的代码,一点一点通过自己的手敲进电脑,也比只是看看要好。熟能生巧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
弘枝孝星津
2020-04-16 · TA获得超过3506个赞
知道大有可为答主
回答量:3098
采纳率:24%
帮助的人:205万
展开全部
不需要别的了。就看书就是了。硬着头皮看书,然后遇到代码就自己往电脑里写写,然后学会调试。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式