| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3933 人关注过本帖
标题:怎样学习C
只看楼主 加入收藏
liuxiaohui
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2006-6-5
收藏
 问题点数:0 回复次数:12 
怎样学习C

c语言应该怎么学习,看一些什么书和资料

搜索更多相关主题的帖子: 学习 
2006-06-05 19:18
繁华的沙漠
Rank: 1
等 级:新手上路
威 望:1
帖 子:58
专家分:0
注 册:2006-5-26
收藏
得分:0 
你自学还是按学校的课程学啊

2006-06-05 22:23
–★–
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1512
专家分:0
注 册:2006-5-1
收藏
得分:0 
真学C与混二级,学法不一样。
请您谈谈真实想法。
真刀真枪得苦练,
混个文凭有捷径。

落霞与孤鹜齐飞,秋水共长天一色! 心有多大,路有多宽。三教九流,鸡鸣狗盗。兼收并蓄,海纳百川。
2006-06-06 06:27
百二秦关
Rank: 1
等 级:新手上路
帖 子:119
专家分:0
注 册:2006-6-6
收藏
得分:0 
初学者,期待达人现身说法!

2006-06-06 13:19
yiqing8854
Rank: 1
等 级:新手上路
帖 子:66
专家分:0
注 册:2006-6-4
收藏
得分:0 
哈哈,3楼的文笔确实不错,我看过你的回复包括技术的和非技术的,挺佩服你的,像个真真正正的academician ,请教如果是个人兴趣并不是把他作为职业来做的话,需要一本什么样的教程,请推荐
但我个人觉得还是外国人写的比较好,最起码他们的语言语言魅力非常强,不知道《The C programming Language》这本书怎么样,您看过吗?

–★–:英语不行,看不大懂。主要靠 谭书+PC+汇编 混日子。

2006-06-06 13:31
yiqing8854
Rank: 1
等 级:新手上路
帖 子:66
专家分:0
注 册:2006-6-4
收藏
得分:0 
这是为楼主转的:
1.目的要明确

首先确定自己的目的,是为了以后就从事程序设计职业,还只是为了应付考试,还是为了学习更多的知识而希望打下好的基础。

2.书籍的选择

既然确定好了目的,选择书籍是很重要的,这里的内容供你参考一二。
前面已经说过了,目的要明确,而书籍是根据目的进行选择的。

为了从事程序设计职业的,建议购买Deitel父子的《C how to program》。这本书强调了编写程序的绝对规范性,对未来在职场中对程序的规范化有着良好的开端,印度的程序员为何在世界上受到如此的欢迎,主要的原因就是他们有着统一的编写格式,这样对企业的程序开发周期有着飞跃性的提高。

为了应付考试的,建议购买谭浩强的《C程序设计》,这本书的目的就是为了应对当今中国计算机考试的,而不是让你在职场中熟练的使用C语言,而且对相关的C++书籍衔接不好,不推荐想研究好C语言的人员购买此书。

为了希望学习C语言而为日后打下基础的,建议购买Kernighan和Ritchie的《The C programming Language》,这本书能够给你对C语言作为基础一切要求。

3.用最笨的方法学习

买来了书,剩下的内容就是学习了。方法?最笨的方法就是最有效的方法,其实学习C语言的方法就是反复阅读上面的书籍(当然了,为了应付考试的还要背诵一些内容),读一遍不懂可以读第二遍,直到读懂为止。如果你需要捷径,你可以问问Eris研究了多少年的C语言。

4.多做练习

别怕累,每本书都配有大量的练习,这对你理解当章的内容有很大的帮助,没有答案怎么办?不是有输出范例吗?把它在你的C编译器上进行编译,看看出来的结果和你需要的是否一样,反复尝试,直到得出正确的结果。由于每章学到的内容不同,你可以再学完后面的内容后,重新改进原来的C程序,不知不觉中,你的水平已经有了很大的进步。不要有了问题就问,你可以先放在一边,等你学完下面的章节,你可能将前面的问题已经解决了呢!

5.读程序,写程序

经过上面的步骤,你已经能轻松解决书中的问题了,现在你就应该上网了,上网去读人家的程序源码,把你的想法写上去或者再写出新的程序,直到有了自己的一套风格。

6.学习趣味数学问题

你可能有些惊讶,但是你也许需要回到小学小红花数学竞赛中的题目,所有的趣味数学问题都可以通过编程解决,你其实不需要太高深的高等数学水平(其实大部分高等数学问题你不会用在程序设计中),但你却需要培养很好的逻辑能力。

7.拒绝QQ

不要以为QQ上的好友能够给你解决问题,当你上了QQ时,大部分时间都是花在闲聊,所以说与其浪费时间,不如拒绝QQ,其实这里并不是让你拒绝QQ,而是拒绝一切即时聊天软件,因为它会耽误你很多时间。在心中坚守一个原则,不闲聊决不用这些软件。

8.不要停止

当你到达了一个水平之后,剩下的内容就是不停的学习了,每天都要查找相关的C语言新技术,别人的心得,看看能不能对自己有帮助。记住,无论多先进的技术,在IT业,5个月都能让它变成化石技术。

要深入学习计算机,就必须学会编程

1.我该学什么语言?
VB、VC、Delphi、Java……面对各种各样的编程语言,你是不是被弄昏了头脑呢?该学什么?“学VC吧!”许多高手说。并且还举了很有说服力的例子:“学VB只要两个月,学VC要一年,如果先学VB再学VC,所用时间仍然是一年,但学了VC再学VB,所用时间将不到两个月。”这句话没错,的确是这样的。但是刚入门的初学者都能学VC?把每个人都看得这么高?一些初学者把VC当成自己的入门语言,结果能学到最后的只有少部分人!我们不能奢望所有初学者都是在十分熟悉Windows的情况下才开始接触编程的,实际上,很多人就是在学习编程的过程中逐渐深入了解系统的,要是所有人都选择VC作为“入门级语言”……
初学者应该根据自身情况来选择语言,如果你刚开始接触系统,应该去学VB,因为VB很好学,基础最重要;当然,还有Delphi,它介于VB与VC之间。除非你比较熟悉Windows,否则别急着学VC,你会因此神经衰弱的。

2.切忌同时学习多种语言
有没有试过同时学英语俄语德语波兰语法语日语?最后八成会变成鸭子。学编程也一样,如果你才高八斗机敏过人玉树临风,那么随便你同时学VC、VB、Delphi等等等等,没人会拦你,但如果是初学者呢?去做鸭子吧。同时学这么多种语言还不如踏踏实实学好学精一门适合自己的语言!初学者往往什么语言都要去了解一下,更有甚者连一些概念都不熟悉就什么都学,面对他们,我都要自愧不如了,但我还是要劝他们一句:一样一样的学,没有人能一步登天!别以为同时学多种语言就很“光彩”,当心最后仍是七窍通了六窍。
无论学哪门语言,都要把它学好再想其它,别“花心”,如果你是学VB的,至少要熟悉VB编程并且能熟练使用API的时候,你才应该去学其它语言,学VC更要注意,否则最后只能“无所不学,而一无所知”,只学一种语言时遇到困难还是好处理的,但是同时学这么多种,你保证都不遇上问题?小心几种语言的问题一起来压你!

3.要有主见
许多初学者爱跟着潮流走,外面流行什么他就跟着做什么(追“猩”族?)今天流行VB他就学VB,明天流行Delphi他就把VB忘了,再到VB.Net、C#……人云亦云,随波逐流,“专家”说什么语言好他就投奔什么语言,“走在科技前沿”,但是到最后又能学到什么?不仅丢了西瓜,连个绿豆都没拣着。这年头“世界变化快”,我知道,但是它怎么变就随它去,总不见得把你变成今天张三明天李四吧?“月亮走,我也走”的思想要不得,别管外面流行什么,如果不是大众需要,你只管学好你该学的语言就行。

4.别看轻其他语言
经常有人说“XX语言差,学了没前途!”要是让我评价一句,恐怕是你没前途吧?你凭什么说它差?没有一种语言是十全十美的,即使它再“差”,只要它还没有被外界宣布完全淘汰,它就有存在的理由!曾经有人对我说:“我的老师经常教育我,VB太差了,所以我要把以前学过的忘掉。”且不说这家伙随波逐流,单是他老师就够酷了,呵呵,不知道他的老师是圈子里的哪位资深专家呢?只怕是个三角猫吧!VB虽然存在一些局限性,但它的语法很好理解,数据库编程很方便,配合API也能完成一些复杂工作,这就叫差?多少个
优秀程序不是用VB这个“没前途”的语言写出来的?多少个程序员不用VB?你看见他们没前途了吗?

5.不可缺少的教材
虽然从古到今一直有“尽信书,宁可无书”的遗训,但是我们可别因此“无书”哦!也许你天资聪明,自学电脑不用教材,但是自学电脑可以凭现象和经验,学编程能凭空摸索?连变量、过程等概念都不知道,还能看懂for(i=1;i<50;i++)的意思?要学编程绝对不能少教材资料,如果连这都不舍得买,那么你最好别学了。还有一点,关于网络教程,我个人认为它太过于零散了,即使是一本完整的电子书也尽量不要看(除非实在买不到),难道你要一边写代码一边ALT+TAB?我宁愿慢慢翻一本书,也不愿盯着屏幕看半天!现在市
面上的教材参差不齐,光买一本是明显不够的,基础的、高级的都要买回来慢慢研究,至少也要3本吧?市价低于20元的书最好不要考虑了,看看它的厚度!书本的厚度通常与含金量是成正比的(厚厚一本垃圾?你衰),最好选一些比较常见的出版社出版的书籍,尽量别买少见的,质量没得保证!我的一个同学就买了一本20元的垃圾,整本书连个完整的例程都没有,还大言不惭“基本入门”,误人子弟啊!现在那同学看的是我借给他的清华大学出版社出版的《中文 Visual Basic 6.0 傻瓜书》。
一个小窍门:如果你不知道该买什么书,最好找个高手一起去,让他帮你选本好的,如果你身边没有高手,那就找厚点的!或者书名带有“疑难解答”或“API”,这些书质量一般都可以。

6.关于英语
由于大多数语言的母语都是英语,这就导致了一些初学者望而却步,但是英语对于编程很重要吗?实际上编程需要的英语很少,都是比较基础的词汇语法,它和一般的英语不一样,即使你连一篇英语文章都看不下去,但只要有点英语基础的,你就不用怕“不会”!(当然前提是一些基础词汇如If、For、Next、While、include等必须看得懂,否则先去补习一点英语再说)就算英语再好,没学过编程也不会看得懂程序源码,难道没学过编程能知道StrComp等于String Compare?学编程与英语水平无关,我们学的是编程而不是英语!

7.编程大忌——组装
VB最大的方便之处是它和ActiveX能很好组合,MS和第三方厂商为VB开发了许多ActiveX控件,为初学者提供了很好的学习机会,但是一些初学者却满足于此,做一个程序用了一大堆别人的控件,加上一点微不足道的代码,就以为学会了编程,却不知这样根本没有入门!ActiveX是别人做的东西,写了多少代码才到你用的!别幻想ActiveX无所不能,从另一个方面说,它正是VB的累赘!会用ActiveX又有什么了不起?API会吗?复杂点的代码会写吗?会自己开发ActiveX吗?做一个用到通用对话框的程序,只会用comdlg32.ocx的ShowOpen方法,却不会用GetOpenFileName这个API来打开,而且使用ActiveX会让你的程序挂上一大堆OCX,加重程序开销,更要命的是ActiveX会导致许多不可预料的错误,如控件过期、控件没有注册等,任何一个错误都会让你的程序无法运行,许多初学者搞不清ActiveX与程序文件的关系,发布软件时忽略了程序需要的ActiveX,导致程序在其他环境无法运行,我早期发布的IIS Cracker就因为不得已用了两个ActiveX而成为我最头痛的事(有些东西不用ActiveX做不出来,没办法)如果一个程序出现控件错误,而作者又没有提供相应的控件,那么我要做的就是把这个程序删除!在此提醒各位一句:写程序不是组装!别以为用VB画个窗体,加几个ActiveX就学会了编程,你根本连编程的门槛都没入!

8.循序渐进
许多初学者刚开始接触编程就急着写一些较高级的代码,却忽略了最重要的基础,他们也许热情高涨,也许有心学编程,但是却没能静下心学编程基础,这将导致付出时间多而收获少的后果,举个例子吧,你刚入门,连一个简单的程序都不会做,就算我给你个木马程序的全部源代码(谁要独裁者的代码?呵呵)你又能看懂多少?学习要一步一步来,没有扎实的基础,谁都不可能写出好程序。当然,学习的方法也不能不提,尽管学VB、Delphi不需要专门学Basic、Pascal,但是学VC就不能不学C/C++了,否则你会前进得很辛苦!别信什么“速成班”、“24小时学会XXX”,那种是喂猪的!经验要靠练习来积累,不能只学理论,编程不是让你纸上谈兵的,平时不多练习,别想写出什么好程序!学习时要从简单做起,先熟练简单编程,在这个基础上要写出高级点的程序就不困难了,遇到难题别被吓着,努力克服它(除非是由于语言的局限性而做不到的),如果暂时做不出来,可以先搁一段时间,但别把它忘了。等你学到更高一层的技术后,再回头研究过去的难题,将会事半功倍。

9.在学好一种语言的基础上,继续学习其他语言
别误会,这不是让你同时学习N种语言,而是在学好一种语言后,继续学其它语言,例如学好VB后,可以改学C、Delphi等,不要守着VB不放,多一种语言就多一条出路,如果你觉得自己学得够好了,那就别犹豫,马上改学另一种语言(喂喂,你怎么把VB的书给烧了?不是让你放弃已经学会的语言啊)还是那句话,切忌同时学习多种语言!如果你对自己掌握的水平没信心,最好还是别想其它了!
多学几种语言的好处是显而易见的,一来可以做到几种语言同时配合,二来对扩大知识面也有很大帮助。
注意:学VB/Delphi后马上学VC是错误的,你必须先学会C!

10.用多种语言配合,多利用各种语言的长处
前面已经提到过,各种语言都有短处,但是它们一般都能互相弥补,VB的局限性导致一些复杂工作不能实现,VC强大,但是界面难做(个人想法),这时你可以用VB写界面,VC写DLL供VB调用。例如VB的指针、位运算操作麻烦且执行速度比较慢,在一些特殊应用环境里,就必须用VC写DLL了,其实写个DLL并非难事,甚至比写个VC的MFC程序还要简单。

11.多收集信息
学编程不能闭门造车,有些知识是书本上没有的,应该多使用搜索引擎,多搜集研究前辈们做的源代码,吸收一些新知识和优秀思路,有助于提高编程水平,另外还应该参与一些论坛的讨论,积累一些经验。

建议你从c语言学起,最好报名参加一个培训班

2006-06-06 13:32
越来越像个废物
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2006-6-6
收藏
得分:0 
例如学好VB后,可以改学C、Delphi等,

这结论在哪来的
2006-06-06 15:48
繁华的沙漠
Rank: 1
等 级:新手上路
威 望:1
帖 子:58
专家分:0
注 册:2006-5-26
收藏
得分:0 

我想他的意思是要学会多种语言
并没有楼上的意思


2006-06-06 22:21
rejoice007
Rank: 1
等 级:新手上路
帖 子:47
专家分:0
注 册:2006-4-21
收藏
得分:0 
八楼讲得有道理.

2006-06-06 22:45
神经塔
Rank: 6Rank: 6
等 级:贵宾
威 望:20
帖 子:1987
专家分:4
注 册:2006-7-1
收藏
得分:0 
顶,好贴

[shadow=255,red,2]待到秋来九月八,我花开时百花杀。冲天香阵透长安,满城尽是黄金甲。 [/shadow]
2006-07-16 09:38
快速回复:怎样学习C
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017589 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved