|
马上注册,结识高手,享用更多资源,轻松玩转三维网社区。
您需要 登录 才可以下载或查看,没有帐号?注册
x
编程其实就是用一种计算机“听”得懂的语言去命令它去完成你期望电脑做的事。(注意,这里是期望电脑做的事,而非电脑要做的事!)
4 ~: x" _: ~# A6 i6 X
2 H( }: X9 H9 L v& o- `% c' R. [+ m计算机能“听”懂的语言有很多种,而我们将要学习的C语言则是较为出色的一种高级语言!其他还有像BASIC语言、汇编语言等…… 0 g" W5 E5 H3 B9 W+ k" J
" w8 q; s$ w. h5 n5 R: B& B1 a其实所有的语言最终都将转换成机器码去执行(什么是机器码,即CPU唯一可以读懂的命令,即指令),不过由于机器码生涩难懂,不便于记忆,而且还不符合人类(相对于计算机)的思维习惯,所以才产生了向汇编一样的低级语言,和C语言一样的高级语言,这里所说的高级与低级并不是指语言的好坏,而是指接近人类思维模式的程度,相比较而言,C语言更接近人类(美国人)的思维模式,所以被称为高级语言,反之亦然!
1 A/ y+ Y4 q' t- h& B! B$ G-------------------- $ w( [& n, k5 m" J1 g2 \, J! Y4 J! l
8 N3 L# _% F' s D) z8 n3 \C程序设计语言概论(仅需了解) % e" i3 X2 p' Z' c
1 I+ K& u" ~( X) x( m+ mC语言是在70年代初问世的。一九七八年由美国电话电报公司(AT&T)贝尔实验室正式发表了C语言。同时由B.W.Kernighan和D.M.Ritchit合著了著名的《THE C PROGRAMMING LANGUAGE》一书。通常简称为《K&R》,也有人称之为《K&R》标准。但是,在《K&R》中并没有定义一个完整的标准C语言,后来由美国国家标准学会(ANSI)在此基础上制定了一个C 语言标准,于一九八三年发表。通常称之为ANSI C。 8 u, w& T8 a, F# `$ _+ |
) c' M; N( N. i6 [3 d
当代最优秀的程序设计语言早期的C语言主要是用于UNIX系统。由于C语言的强大功能和各方面的优点逐渐为人们认识,到了八十年代,C开始进入其它操作系统,并很快在各类大、中、小和微型计算机上得到了广泛的使用。成为当代最优秀的程序设计语言之一。 3 a) s% W3 S" L7 ]) c
+ _1 P- D6 P& n8 E
C语言的特点(这些是前辈们总结出来的,现在没有必要去深入了解,随着你水平的提高,你会慢慢的理解和感悟) 0 ?# q2 r) m0 u" K# e) C
, ]5 j' V- H+ O; A$ e5 c7 _C语言是一种结构化语言。它层次清晰,便于按模块化方式组织程序,易于调试和维护。C语言的表现能力和处理能力极强。它不仅具有丰富的运算符和数据类型,便于实现各类复杂的数据结构。它还可以直接访问内存的物理地址,进行位(bit)一级的操作。由于C语言实现了对硬件的编程操作,因此C语言集高级语言和低级语言的功能于一体。既可用于系统软件的开发,也适合于应用软件的开发。此外,C语言还具有效率高,可移植性强等特点。因此广泛地移植到了各类各型计算机上,从而形成了多种版本的C语言。 + `% ?+ I, ?( Q- n" q4 Y& e0 e
-------------------- # P5 @% f5 b% d; \: G8 Q4 Q
G. a9 \( Z8 c1 E9 ~0 p F m
在电脑上编辑C语言需要相应的解释器,现推荐一下的软件,并附带说明(仅供参考)
5 L. W$ ?0 t# I' a9 d: q6 n. I假设你使用windows, 那么有以下推荐的编程工具: ! e1 U. |& |7 b- F4 J. D
) J: u9 v+ X& F0 g8 x8 Z5 I5 w
linux下的GCC有多好就不说了(全球最好的C/C++ compiler, 却是免费的,可见开源者的力量与热情). ) a, X( T" P& Q( B3 z- ~* x O
- G& \' D, X5 O4 U/ `0 R$ X N# }. U
Windows下学习C语言首推LCC, 体积小,编译速度快, 代码效率高, 对ANSI C支持极好, 而且支持Win32开发! 不过IDE功能不够强大,对于追求这方面的"狂热"分子请慎用...
]+ J9 I4 s/ m0 v- S: V3 y/ E! R) c# T- ?5 v3 r
--------------------
$ _4 y" i" }5 u' R
) v5 ? R5 W o9 t: W想要精通C语言,必须要有良好的数学和英语基础。
. @4 x) C6 X3 e; |, \& a- m最低初中以上学历(最好是高中以上),良好的数学功底(这个是很重要的,特别是高等数学。像离散数学等,离散数学很有用,在编译原理,关系数据库,算法中很有用,如果你打算精通C,那就一定要把它学好,可以自学)。
# @" K) I2 P h; E# W4 q4 n6 R4 m, k5 t! O) ?$ s O9 b: B% b6 k
一定的英语基础会对学习C语言有所帮助,因为C语言中有一些函数名都含有实际意义的英文单词(例如printf,scanf含有print,scan)。已经了解这些单词意义的人在记忆上相对就不许要付出任何额外的时间了。不过我认为不会也不影响学习C语言的过程,只不过需要拿出一些时间专门记忆一些名字罢了。
% }! M+ S& o! v+ J$ n
* ]1 u$ U" e. s K2 ?# y9 ]好了,我们可以开始学习C语言了! + q/ ~4 \3 |5 z4 q2 M# a0 R2 s! O+ O
首先,我们要在自己的电脑上安装C语言解释器。 8 q( e1 Q7 Z/ D* f! K
然后,买几本合适的参考书(这里推荐谭浩强的《C程序设计》,最好配合《C程序设计题解与上机指导(第三版)》,同样是谭浩强编著) 8 T, K4 ^; k p+ e; j4 M
' h7 ^9 |1 R. h* J% ?
还要找些简单的,注释详细的用C语言编写的程序的源代码,试着去读懂它(就像读英文课文一样,不过要有一定的数学和英语基础,否则别说设计了,就连读源代码都难) @3 P8 w1 v+ a H0 n
我这里收集了些:
3 b( O# l: k( i5 d8 b6 j http://post.baidu.com/f?kz=8618367
+ F3 V' L5 Y4 k, S
. t6 W! v) l9 L0 o' f最后,我觉得以实践的方法去学习可以达到事半功倍的效果,你可以在看过一些简单的源代码及学完一章的课程之后独立地去完成可后的习题,然后自己试着有目的或无目的(但必须可以执行)编写一段代码,这样可以学会写C的基本步骤及要领。记住,千万不要糊弄自己,每句代码的意思都要知其然一直其所依然,否则就不要在浪费时间了!
5 `. M. ~+ `6 s/ Y+ X9 g* U$ E! Z& T9 r3 Z1 G
以上是我以一个C语言初学者的角度去写的学习心得,希望对大家会有所帮助,更希望有高手可以指出的错误及补充其中的不足。以便帮助更多的像我一样的菜鸟知道改怎样去学习C语言! |
|