学编程口号
㈠ 16字计算机与信息学院运动会口号
嚣张点的:
文者称雄,武者称霸,xx-xxx-x班,雄霸天下。
扬帆起航,劈波斩浪,xx班一出,谁与争锋。
龙腾虎跃,雷霆万钧,无与伦比,万众一心。
齐心协力,争创佳绩,勇夺三军,所向披靡。
英明神武,勇冠江山 ,史上最强, xx-xxx-x班。
亲密五班,合作无间,力挫群雄,舍我其谁。
龙腾虎跃,雷霆万钧,无与伦比,万众一心。
xx班一出,谁与争锋,横扫赛场,唯我称雄。
山中猛虎,水中蛟龙,xx-xxx-x班,卧虎藏龙。
(抚长剑,一杨眉,清水白石何离离,脱吾帽,向君笑,饮君酒,为君饮,张良未逐赤松去,桥边黄石知我心)
文雅点的:
磨砺意志,奋发冲刺,团结拼搏,展现自我。
放马金鞍,惟我十班,超越梦想,激丶情无限。
爱我季延,立志成材,奋勇冲击,永争第一。
竞速时代,xx班最帅,团结友爱,不可阻碍。
释放激丶情,放飞梦想,今天明天,由我创造。
青春似火,超越自我,放飞梦想,创造辉煌。
团结一心,奋勇向前,追求卓越,争创第一。
积极进取,努力拼搏,磨练意志,强健体魄。
秀出自信,展现自我,非比寻常,xx班最强。班: 勇争第一,团结一心,共创佳绩
2班: 强身健体,立志成材,2班2班,非同一般
3班: 扬帆把舵,奋勇拼搏,看我三班,锐不可当
4班: 与时俱进,奋力拼搏,齐心协力,争创一流
5班: 铁心拼搏,争创一流
6班: 团结拼搏,争创伟绩,飞跃梦想,自强不息
7班: 挑战自我,超越梦想,团结互助,共创佳绩
8班: 励精图治,开拓进取,超越刘翔,从我做起
9班: 九班九班,勇夺桂冠,齐心协力,共创辉煌
10班: 团结进取,开拓创新,顽强拼搏,争创一流
11班: 互相学习,取长补短,再接再厉,勇攀高峰
12班: 与时俱进,开拓创新,顽强拼搏,勇夺第一
八年级
1班: 励精图治, 争创一流,好好学习,天天向上
2班: 八年二班,猛虎出山, 八年二班, 锐不可当
3班: 奋力拼搏,扬我班风,努力学习,勇争第一
4班: 八(4)精英,敢闯敢拼,齐心协力,争创佳绩
5班: 青春如火,超越自我,八年五班, 奋勇拼搏
6班: 看我六班,影子飒爽, 奋勇拼搏,展现自我
7班: 励精图治,奋发向上,努力拼搏,永不言弃
8班: 八班一出,谁与争锋,横扫赛场,唯我称雄
9班: 挥动激-情,放飞梦想,团结拼搏,树我雄风
10班: 十班,十班, 锐不可当,超越自我,再创辉煌
11班: 顽强拼搏,拥抱胜利,十一,十一,勇争第一
12班: 挥动激-情,挑战自我,突破极限,超越自我
可以改改班级。
㈡ 少儿编程异军突起,是“热门忽悠”还是“成长刚需”
关于“少儿编程”这个话题是否听上去让我们感觉很高大上,但实际上我们要了解到,少儿编程并不是像大家想象的那样多么遥远,多么遥不可及的一个学科,它并不是像科学家一样站在金字塔上创造发明,而是一种学习的基础。
编程与画画有着共同之处,美术老师会要求自己的学生用不同的角度观察被画的对象。很多学了美术的人之后,发现自己看待世界的角度是和之前是不一样的,能够注意到别人注意不到的细节质感,以及喜欢用变化的角度去看待事物,寻找它在不同平面上给人的形状,编程与此相似。
当然我们也要知道,编程的程序不可能在路上是一帆风顺的,就算你学习了少儿编程,但是在编程的这条路上你也要吃很多的苦,但同样的,也锻炼了孩子们在失败后如何面临失败的这份勇气。
这是少儿编程的一种独特性,少儿编程的出现,让我们在未来的社会中有了更大的发展空间。未来社会中也有着很多不可思议的东西在等待着我们,就像我们很多年前想象不到互联网的高速发展一样。
㈢ linuxC编程一站式学习的前 言
本书最初是为北京亚嵌教育研究中心的嵌入式Linux系统工程师就业班课程量身定做的教材之一。该课程是为期四个月的全日制职业培训,要求学员毕业时具备非常Solid的c语言编程能力,能熟练地使用Linux系统,同时对计算机体系结构与指令集、操作系统原理和设备驱动程序都有比较深入的了解。然而学员入学时的水平是非常初级而且参差不齐的:学历有专科、本科也有研究生;专业有和计算机相关的,也有很不相关的(例如会计专业);以前从事的职业有和技术相关的也有完全不相关的(例如HR);年龄从二十岁出头到三十五六岁的都有。这么多背景、基础、思维习惯和理解能力完全不同的人来听同一堂课,大家都迫切希望学会嵌入式开发技术,投身IT行业,这就是职业教育的特点,也是我编写本书时需要考虑的主要问题。
学习编程绝不是一件简单的事,尤其是对于零基础的初学者来说。大学的计算机专业有四年时间从零基础开始培养一个人,微积分、线性代数、概率论、离散数学、组合数学、自动机、编译原理、操作系统、计算机组成原理等一堆基础课,再加上C/C++、java、数据库、网络工程、软件工程、计算机图形学等一堆专业课,最后培养出一个能找到工作的学生。很遗憾这最后一条很多学校没有做好,据我们考查,来亚嵌培训的很多学生基础几乎为零,我不知道为什么。与之形成鲜明对比的是,只给我们四个月的时间,同样要求从零基础开始,最后培养出一个能找到工作的学生,而且还要保证他找到好工作,这就是职业教育的特点。
为什么我说“只给我们四个月的时间”?我们倒是想教四年呢,但学时的长短我们做不了主,是由市场规律决定的。四年的任务要求四个月做好,要怎么完成这样一个几乎不可能的任务呢?有些职业教育给出的答案是“实用主义”,打出了“有用就学,没有用就不学”的口号,大肆贬低说大学里教的基础课都是过时的、无用的,只有他们教的技术才是实用的。这种炒作很不好,我认为大学里教的每一门课都是非常有用的,基础知识在任何时候都不会过时,倒是那些时髦的“实用技术”有可能很快就会过时了。
四年的任务怎么才能用四个月做好?我们给出的答案是“优化”。现在大学里安排的课程体系最大的缺点就是根本不考虑优化。每个过来人都会有这样的感觉:大一大二学了好多数学课,却不知道都是干什么用的,不明白为什么要学。连它有什么用都不知道怎么能有兴趣学好呢?到大三大四学专业课时,用到以前的知识了,才发现以前学的数学是多么有用,然而早就忘得一干二净了,考完试都还给老师了。回头重新学,才发现很多东西以前根本没学明白,现在真的学明白了,那么前两年的时间岂不是都浪费了?大学里的课程体系还有一个缺点就是不灵活,每门课必须占用一个学期,必须由一个老师教,不同课程的老师之间没有任何沟通和衔接,其实这些课程之间是相互依赖的,把它们强行拆开是不符合人的认知规律的。比如我刚上大学的时候,大一上半学期就被逼着学习C语言,其实C语言是一门很难的编程语言,不懂编译原理、操作系统和计算机体系结构根本不可能学明白,那半个学期自然就浪费掉了。当时几乎所有学校的计算机相关专业都是这样,大一刚来就学C语言,有的学校更疯狂,上来就学C++,导致大多数学生都以为自己会C语言,但其实都是半吊子水平,到真正写代码的时候经常为一个Bug搞得焦头烂额,却没有机会再系统地学一遍C语言。因为在学校看来,C语言早在大一就给你“上完了”,就像一顿饭已经吃完了,不管你吃饱没吃饱,不会再让你重吃一遍了。显而易见,如果要认真地对这些课程进行优化,的确是有很多水分可以挤的。
本书有什么特点
本书不是孤立地讲C语言,而是和编译原理、操作系统、计算机体系结构结合起来讲。或者说,本书的内容只是以C语言为载体,真正讲的是计算机和程序的原理。
强调基本概念和基本原理,在编排顺序上重视概念之间的依赖关系,每次引入一个新的概念,只依赖于前面章节已经讲过的概念,而绝不会依赖于后面章节要讲的概念。有些地方为了叙述得完整,也会引用后面要讲的内容,比如说“有关××我们到第×章再仔细讲解”,凡是这种引用都不是必要的依赖,可以当它不存在,只管继续往下学习就行了。
尽量做到每个知识点直到要用的时候才引入。过早引入一个知识点,讲完了又不用它,读者很快就会遗忘,这是不符合认知规律的。
本书面向什么样的读者
这是一本从零基础开始学习编程的书,不要求读者有任何编程经验,但读者至少需要具备以下素质:
熟悉Linux系统的基本操作。如果不具备这一点,请先参考其他教材学习相关知识,熟练之后再学习本书,《鸟哥的Linux私房菜》据说是Linux系统管理和应用方面比较好的一本书。但学习本书并不需要会很多系统管理技术,只要会用基本命令、会自己安装系统和软件包就足够了。
具有高中毕业的数学水平。本书会用到高中的数学知识。事实上,如果不具有高中毕业的数学水平,也不必考虑做程序员了。但并不是说只要具有高中毕业的数学水平就足够做程序员了,只能说看这本书应该没有问题,数学是程序员最重要的修养,计算机科学其实就是数学的一个分支,如果你的数学功底很差,日后还需要恶补一下。
具有高中毕业的英文水平。理由同上。
对计算机的原理和本质深感兴趣,不是为就业而学习,不是为拿高薪而学习,而是真的感兴趣,想把一切来龙去脉搞得清清楚楚而学习。
勤于思考。本书尽最大努力理清概念之间的依赖关系,力求一站式学习,读者不需要为了找一个概念的定义去翻阅其他书籍,也不需要为了搞清楚一个概念在本书中乱翻一通,只需要从前到后按顺序学习即可。但一站式学习并不等于傻瓜式学习,有些章节有一定的难度,需要读者积极思考才能领会。本书可以替你节省时间,但不能替你思考,不要指望像看小说一样走马观花看一遍就能学会。
为什么要学这本书而不是K&R
《The C Programming Language》(后文简称[K&R])是公认的世界上最经典的C语言教程之一,这点毫无疑问。在C标准出台之前,K&R第一版就是事实上的C标准。C89标准出台之后,K&R跟着推出了第二版,可惜此后就没有更新过了,所以不能反映C89之后C语言的发展以及最新的C99标准。本书在这方面做了很多补充。本书与其说是讲C语言,不如说是以C语言为载体讲计算机和操作系统的原理,而K&R只是为了讲C语言而讲C语言,侧重点不同,内容编排也很不相同。K&R写得非常好,代码和语言都非常简洁,但很可惜,只有会C语言的人才懂得欣赏它,K&R是非常不适合入门学习的,尤其不适合零基础的学生学习。
本书“是什么”和“不是什么”
本书包括两大部分:
C语言入门。介绍基本的C语法,帮助没有任何编程经验的读者理解什么是程序以及怎么写程序,培养程序员的思维习惯,找到编程的感觉。前半部分改编自《How To Think Like A Computer Scientist: Learning with C++》(后文简称[ThinkCpp])。
C语言本质。结合计算机和操作系统的原理讲解C程序是怎么编译、链接、运行的,同时全面介绍C的语法。位运算的章节改编自林小竹老师的讲义;链表和二叉树的章节改编自朱仲涛老师的讲义;汇编语言的章节改编自《Programming from the Ground Up: An Introction to Programming using Linux Assembly Language》(后文简称[GroundUp]),在该书的最后一章中提到,学习编程有两种Approach,一种是“Bottom Up”,一种是“Top Down”,它们各有优缺点,而我们需要将两者结合起来。所以我编写本书的思路是:第一部分Top Down;第二部分Bottom Up;第三部分可以算填补了中间的空隙,三部分全都围绕C语言展开。
这本书定位在入门级,虽然内容很多,但不是一本网络全书,除了C语言的基础知识要讲透之外其他内容都不深入,书中列出了很多参考资料,是读者进一步学习的起点。[K&R]的第1章是一个Whirlwind Tour,把全书的内容简单概括了一遍,然后再逐个深入讲解。本书也可以看作是计算机专业课程体系的一个Whirlwind Tour,学习完本书之后读者有了一个全局观,再去学习那些参考资料就应该很容易上手了。
为什么要在Linux平台上学C语言?
用Windows学C语言不好吗?
用Windows还真的是学不好C语言。C语言是一种面向底层的编程语言,要写好C程序,必须对操作系统的工作原理非常清楚,因为操作系统也是用C语言编写的,我们用C语言编写应用程序可以直接使用操作系统提供的接口。既然你选择了本书,你一定了解:Linux是一种开源的操作系统,你有任何疑问都可以从源代码和文档中找到答案,即使你看不懂源代码,也找不到文档,也很容易找个高手教你,各种邮件列表、新闻组和论坛上从来都不缺乐于助人的高手;而Windows是一种封闭的操作系统,除了微软的员工别人都看不到它的源代码,只能通过文档去猜测它的工作原理。更糟糕的是,微软向来喜欢藏着掖着,好用的功能留着自己用,而不会写到文档里公开。本书的第一部分在Linux或Windows平台上学习都可以,但第二部分和第三部分介绍了很多Linux操作系统的原理以帮助读者更深入地理解C语言,所以后两部分只能在Linux平台上学习。
Windows平台上的开发工具往往和各种集成开发环境(Integrated Development Environment,IDE)绑在一起,例如Visual Studio、Eclipse等。使用IDE确实很便捷,但IDE对于初学者绝对不是好东西。微软喜欢宣扬傻瓜式编程的理念,告诉你用鼠标拖几个控件,然后单击一个按钮就可以编译出程序来,但是真正有用的程序有哪个是这么拖出来的?很多从Windows平台入门学编程的人,编了好几年程序,还是只知道编完程序单击一个按钮就完事了,把几个源文件拖到一个项目里就可以编译到一起了,如果有更复杂的需求他们就傻眼了,因为他们脑子里只有按钮、菜单的概念,根本没有编译器、链接器、Makefile的概念,甚至连命令行都没用过,然而这些都是初学编程就应该建立起来的基本概念。另一方面,编译器、链接器和C语言的语法有着密切的关系,不了解编译器、链接器的工作原理,也不可能真正掌握C语言的语法。所以,IDE并没有帮助你学习,而是阻碍了你的学习,本来要学好C编程只要把语法和编译命令学会就行了,现在有了IDE,除了学会语法和编译命令,你还得弄清楚编译命令和IDE是怎么集成的,这才算学明白了,本来就很复杂的学习任务被IDE搞得更加复杂了。Linux用户的使用习惯从来都是以敲命令为主,以鼠标操作为辅,从学编程的第一天起就要敲命令编译程序,等到你把这些基本概念都搞清楚了,你觉得哪个IDE好用你再去用,不过到那时候你可能会更喜欢vi或emacs而不是IDE了。
体例说明
像The quick brown fox jumps over the lazy dog这样的字体在本书中是代码字体。这种字体的名称是Dejavu Sans Mono,为什么我要提倡用这种字体呢?第一,它是等宽字体,因此适合做代码字体。第二,它的1和l、0和O区分得非常清楚(我在教学中发现初学者很容易把这些字符抄错),因此它比Courier New更适合做代码字体。第三, 它是我的Linux图形终端的默认字体,采用这种字体排版可以使得看书和看屏幕的感觉很一致,希望读者在看这本书时也会有这种Dejavu(似曾相识)的感觉。
像下面这样有边线的是代码:
#! /bin/sh
VAR=1
VAR=$(($VAR+1))
echo $VAR
没有边线的是终端显示,包括输入的命令和程序运行结果,例如:
$ VAR=1
$ VAR=$(($VAR+1))
$ echo $VAR
2
本书中统一用$表示Shell提示符。
加粗的字句表示强调。
在定义一个名词时会给出它的英文名称,例如集成开发环境(Integrated Development Environment,IDE),通过书后的索引可以找到这些定义在书中首次出现的位置。
致谢
本书的写作得到了北京亚嵌教育研究中心的全力支持,尤其感谢李明老师和何家胜老师。没有公司的支持,我不可能有时间有条件写这本书,也不可能有机会将这本书公开在网上。
然后要感谢亚嵌教育的历届学员和各位老师,在教学和讨论的过程中我经常会得到有益的启发,这些都促使本书更加完善。在本书的写作过程中,很多读者为本书提出了很有价值的建议,很多建议是热心网友通过在线评论提出的,有些网友我只知道ID或E-mail。在此向他们表示感谢。
感谢帮助过我的老师们:李明、何家胜、邸海霞、郎铁山、朱仲涛、廖文江、韩超、秦蔚、吴岳、张 、邢文鹏、何晓龙、林小竹、卫剑钒、郭同彬、王波、王磊。
感谢热心网友:ddd、wuyulei、commapopo、田伟、田雨、daidai、邓楠、杜朴风、Zoom.Quiet、陈莉君老师、杨景、章钰、chen、Jiawei Zhang、waterloo、张现超、曾宇、董俊波、RobinXiang、刘艳明、been2100、cleverd、juicerococo、徐斌、cyy、Linux_Xfce、冯海云、侯延祥、churchmice、codycody23、syfeagle、王公仆、刘敏、Laciq、yuchen、陆杨、陈杨希、love_wc3、姚磊、芝麻、wadenx、沈震、sunbingfly、mick、baaluck、曹帅军、zhoudy、朱夜光、刺猬、leezhenfeng、王兆宏、徐凯、码匠、况海斌、尹志伟、王星。
还要感谢电子工业出版社博文视点资讯有限公司的周筠老师和李冰老师的大力支持,感谢江立编辑严谨细致的工作。
在写作过程中我遇到过很多困难:工作繁忙、对未来迷茫、生活压力大、缺乏安全感、个人琐事等。然而有这么多热心的同学、老师、朋友、网友在等着阅读我的书在线更新的内容,给我提建议,希望我把书改得更完善,这是我坚持写下去的最大动力。谢谢你们!
由于作者水平十分有限,没写过C编译器和C标准库,所以疏漏之处在所难免,如有错误欢迎广大读者朋友批评指正。写书是一件严肃的事,书中的错误所有人都看得见,白纸黑字赖不掉的。我教过的很多学生都在大学里学过C语言,甚至考过二级,但程序写得一塌糊涂,连最基本的概念都搞错了,以前学过的C语言教材中的错误在他们脑子里根深蒂固,即使我纠正多次,他们仍然只记得以前学过的错误概念。这种有基础的学生还不如没有任何基础的学生教起来容易。我非常害怕我教给别人的知识也是错的,所以我仔细研究了C99之后才敢动笔写书。这本书涵盖的话题比较广泛,我竭尽全力也不足以保证书中的内容全部正确,还要依靠社区的力量一起来完善这本书,这样才能真正对读者负责,所以我选择将这本书开源。。
希望本书能成为你求学道路上的第一个伙伴。
宋劲杉
2009年7月22日
㈣ 常用的计算机编程语言有那些
种类很多,要学的话,主要看你要从事哪个方面,编程都是大同小异,如果你学会一门,其他的学起来也就轻松许多。 如果你想当个普通的公司职员,建议C\C++这类的。 如果你想当个破解人员,建议汇编(我觉得是相当的难...)。 如果你想当个黑客,拥有一定的软件知识(很低层的那种)和硬件知识(使用软件掌控硬件)和网络知识(入侵这类的)。 如果你想当个红客,主要是网络安全知识。
这需要看将来想从事什么类型软件的开发吧。如果在国内开发windows类型应用程序,据说vb比较流行,但如果开发和硬件关系较大的嵌入式程序,则使用较多的还是C语言,而网络这个方面,无论是有线还是无线,大多数都选择了JAVA。以上是从应用角度来讲的,如果从性能和投入方面分析,C语言无疑性能上最好的,但它的复杂度太高,开发和维护费用较大,一般比较好的游戏程序或者速度要求较高的程序会选择C++来开发,而VB等由于它的简易性,可以极大缩短开发周期,也是程序员的宠儿之一。另外有一种语言python在国内逐渐出现,国外好像已经流行了十几年吧,linux的引导程序和BT的一些组件都是用它开发的,具有开发周期短,易维护等特点,运行速度也比JAVA要快,并且面向对象,无平台限制,据说还开放了源码,不过由于在国内流行时间不长,各大公司出于对以前开发代码的兼容性的需要,可能一时间接受不这个语言,但可以明显看出,它的发展潜力相当大。 总而言之,C为基础,掌握JAVA,会用VB,了解python,应该看得出这几个词汇之间的轻重差别吧。:)单机编程语言主要有qb,vb,c++,vc++,c语言,我觉得最常用的是c语言,因为现在我们常用的windows操作系统就是用c 语言编写的.非常常用. 网络编程语言现在用的是html 语言,还有java.ada
asp(含asp.NET)
basic(含VB)
b(C语言的前身)
css
c(含VC)
c#(含VC#.NET)
c++(含VC++.NET)
fortran
foxbase
html(含xhtml和shtml)
jacc(不确定是不是这个名字了,一种开发语言的语言)
java
java script
jsp
latex
lua
pascal
perl
php
prolog
python
ruby
sgml(html和xml用得很多,单独列出,其实也是一种sgml)
shell
sql
tcl/tk
vb script
xml 最常用的是 JAVA C C++ java VB 是比较好学的 最牛的要属C#了
世界上编程语言太多了,就像每个国家都有自己的语言一样的.但是从编程语言发展的角度说:
大概经历 这样 四个阶段: ############################################################
第一个阶段是 机器码编程 (你肯定知道计算机只能识别0和1,以前就是这样编程的).现在的PC计算机依然是这样,冯.诺依曼结构的计算机.你可以去网上搜索 冯.诺依曼 是干什么的.你会想,为什么现在编程不是0,1,计算机怎么识别呢?当你开始编程的时候,你用的编译器就在做这些事情.
########################################################### ##########################################################
第二个阶段是 低级语言,比如汇编语言,台湾叫做组合语言.其实组合翻译还是比较准确的.一般有IBM PC汇编语言,还有AT&T的汇编语言.学一个就可以了,另一个只是形式不同.对于Intel的CPU来说,8088 8086是对应于16位的汇编语言,80386以后到现在的奔腾都是对应32位汇编语言.现在大学学的是8088/8086的汇编,这远远落后于时代了.目前已经推出了64位的CPU了. 汇编之所以是低级语言,是因为可以对计算机硬件进行直接操作.尤其是对BIOS的中断调用.最典型的是,在我们操作系统启动的时候(比如XP,LINUX...),内核引导程序就要调用BIOS来获得计算机的硬件信息供内核的调用. 低级不是代表功能不强大. 对硬件进行直接操作的,一般如果代码量小的话,会选择汇编来写.汇编的效率极高.
为什么代码量小才用汇编呢?因为汇编代码别人很难读懂.而且非常难维护.所以在选择汇编语言编程的时候要考虑,我的程序是关注什么方面的.
并不是只有汇编语言才能对硬件编程,C语言一样可以,C++,JAVA都可以,但是考虑到执行效率,汇编比他们都有绝对优势.一般系统级编程用汇编,C语言比较多 很多人说汇编语言将被淘汰,但是在一定的领域,这个东西不会被淘汰的.据我所知,目前的系统启动部分除了用汇编写,还没有用其他语言写过,操作系统的内核,多用C来写,还没有用C++来写.据说Linus以前尝试用C++改写Linux内核,不过后来放弃了.如果有人对我的假设有什么疑义,请推荐给我一个不用汇编写启动的代码,或者内核是用面向对象编程语言来写的OS的程序代码,我将不胜感激.
如果有人有反对意见,我保留我自己看法,因为在计算机上没有不可能的事情! ################################################# #################################################
第三个阶段是:结构化高级语言
这个代表就是C语言,PASCAL语言,FORTANT语言.
C语言相比较这三个语言来说,应用是最广泛的. C语言对操作系统和系统使用程序以及需要对硬件进行操作的场合,用C语言明显优于其它高级语言,许多大型应用软件都是用C语言编写的。 C语言具有绘图能力强,可移植性,并具备很强的数据处理能力,因此适于编写系统软件,三维,二维图形和动画它是数值计算的高级语言。 这里提到可移植性,补充上边说的汇编语言,汇编语言因为是直接面对硬件,所以如果硬件不同,编程的语法就不同,所以汇编一般不可移植,或者移植非常困难. C语言常用的编译软件有Microsoft Visual C++,Borland C++,Watcom C++ , Borland C++ Builder,Borland C++ 3.1 for DOS,Watcom C++ 11.0 for DOS,GNU DJGPP C++, Lccwin32 C Compiler 3.1,Microsoft C,High C,等等...... 大学里教学用的是TC2.0,这里的T表示TURBO,是Borland公司的产品. ************************************************8
有必要了解一下C语言的发展历史 C语言的发展颇为有趣。它的原型ALGOL 60语言。 1963年,剑桥大学将ALGOL 60语言发展成为CPL(Combined Programming Language)语言。 1967年,剑桥大学的Matin Richards 对CPL语言进行了简化,于是产生了BCPL语言。 1970年,美国贝尔实验室的Ken Thompson将BCPL进行了修改,并为它起了一个有趣的名字“B语言”。意思是将CPL语言煮干,提炼出它的精华。并且他用B语言写了第一个UNIX操作系统。 而在1973年,B语言也给人“煮”了一下,美国贝尔实验室的D.M.RITCHIE在B语言的基础上最终设计出了一种新的语言,他取了BGPL的第二个字母作为这种语言的名字,这就是C语言。 为了使UNIX操作系统推广,1977年Dennis M.Ritchie 发表了不依赖于具体机器系统的C语言编译文本《可移植的C语言编译程序》。 1978年Brian W.Kernighian和Dennis M.Ritchie出版了名着《The C Programming Language》,从而使C语言成为目前世界上流行最广泛的高级程序设计语言。 1988年,随着微型计算机的日益普及, 出现了许多C语言版本。由于没有统一的标准,使得这些C语言之间出现了一些不一致的地方。为了改变这种情况,美国国家标准研究所(ANSI)为C语言制定了一套ANSI标准, 成为现行的C语言标准 3.C语言的主要特点 。C语言发展迅速, 而且成为最受欢迎的语言之一, 主要因为它具有强大的功能。许多着名的系统软件, 如DBASE Ⅲ PLUS、DBASE Ⅳ 都是由C 语言编写的。用C语言加上一些汇编语言子程序, 就更能显示C语言的优势了,象PC- DOS 、WORDSTAR等就是用这种方法编写的。 C语言的特点 1. 简洁紧凑、灵活方便 C语言一共只有32个关键字,9种控制语句,程序书写自由,主要用小写字母表示。它把高级语言的基本结构和语句与低级语言的实用性结合起来。 C 语言可以象汇编语言一样对位、字节和地址进行操作, 而这三者是计算机最基本的工作单元。 2. 运算符丰富 C的运算符包含的范围很广泛,共有种34个运算符。C语言把括号、赋值、强制类型转换等都作为运算符处理。从而使C的运算类型极其丰富表达式类型多样化,灵活使用各种运算符可以实现在其它高级语言中难以实现的运算。 3. 数据结构丰富 C的数据类型有:整型、实型、字符型、数组类型、指针类型、结构体类型、共用体类型等。能用来实现各种复杂的数据类型的运算。并引入了指针概念,使程序效率更高。另外C语言具有强大的图形功能, 支持多种显示器和驱动器。且计算功能、逻辑判断功能强大。 4. C是结构式语言 结构式语言的显着特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。这种结构化方式可使程序层次清晰, 便于使用、维护以及调试。C语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。 5. C语法限制不太严格、程序设计自由度大 一般的高级语言语法检查比较严,能够检查出几乎所有的语法错误。而C语言允许程序编写者有较大的自由度。 6. C语言允许直接访问物理地址,可以直接对硬件进行操作 因此既具有高级语言的功能,又具有低级语言的许多功能,能够象汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元,可以用来写系统软件。 7. C语言程序生成代码质量高,程序执行效率高 一般只比汇编程序生成的目标代码效率低10へ20%。 8. C语言适用范围大,可移植性好 C语言有一个突出的优点就是适合于多种操作系统, 如DOS、UNIX,也适用于多种机型。 ######################################################
第四个阶段:面向对象的高级语言
典型的是C++ JAVA 在C语言的编程过程中,大家发现 结构化编程的C语言编程比较麻烦.
比如,我要编写 描述3个凳子的程序,如果用C写的话,我必须一个一个描写凳子.如果要写100,1000个或者更多呢?不就麻烦死了.为什么我们不能先构造一个凳子的基本模型,然后根据具体凳子的特点添加代码呢? 这样代码量不是大大减轻了,程序员就少做很多重复劳动了.这个基本模型就是面向对象里边经常提到的类.
当然C++和C比较不仅仅是这些有点,优点太多了,我只是做一个假设而已,C++的内容很多,C++是C的超集.你学习C++你就知道了. C++和C的语法很相近,C++一样能处理结构化的程序,基本和C一样.
所以,你可以直接学习C++.C++和C没有什么必然关系.
############################################# 此外还有其他一些脚本语言perl,标记语言html等等.
游戏开发也经常用到脚本语言. -------------------------------------------------
编程语言就和人说话一样,等你熟练掌握了,你应该学习如何说话的方法和技巧了.就是计算机上常说的 数据结构 和 算法 当你熟练掌握编程语言的时候,你会发现再学一门新的语言不是什么难的事情.很容易上手,确实是这样的.
--------------------------------------------------------------
--------------------------------------------------------------
刚才我说了编程语言基本分为那些,知道这些语言最擅长的地方,你学游戏还是学什么都会有个目标. 无论你从事什么计算机编程工作,我都觉得应该好好学习基础知识,不管你是先学再干,还是先干然后知不足才学.形式都是次要的,关键是解决问题. 不管怎么样,你还是要了解一些数学知识,比如游戏编程要涉及的 线性代数的矩阵知识,等等.数学是很重要的.不要认为编程和数学没有关系.在高级编程中应用数学知识太常见了. 游戏编程现在大家学习3D的比较多.毕竟玩游戏,还是要逼真的感觉的.你初学可以学习OpenGL或者D3D,这些结构和C语言相似,他们不是编程语言,只是接口.编译器你可以采用MS的VC++或者LINUX下的GCC + GLUT,当然编译器只是工具,你喜欢采用什么编译器,调试器都是你自己的选择.MS底下也可以采用其他的,Linux底下也可以采用GTK等等.看你喜好了.
再有就是Web编程语言语了:aspasp.net PHPJSP
㈤ 为什么人人都需要学编程
因为学编程是个不错的出路哒,非常好,可以看看这边