第1课:1分钟了解C语言

第1课:1分钟了解C语言

C语言的发展

最初程序员使用的程序设计语言是一种用二进制代码“0”和“1”形式表示的、能被计算机直接识别和执行的语言,称为机器语言。它是一种低级语言,用机器语言编写的程序不便于记忆、阅读和书写。通常不用机器语言直接编写程序。

在机器语言的基础上,设计出了汇编语言,它可以将机器语言用便于人们记忆和阅读的助记符表示,如ADD、SUB、MOV等。汇编语言适用于编写直接控制机器操作的低层程序,它与机器密切相关,汇编语言和机器语言都是面向机器的程序设计语言,称为低级语言

随着计算机应用的发展,出现了高级程序设计语言。它是一种与硬件结构及指令系统无关,表达方式比较接近自然和数学表达式的计算机程序设计语言。

C语言是一种具有很高灵活性的高级程序设计语言。

1972年至1973年间,贝尔实验室的D.M.Ritchie在B语言的基础上设计出了C语言,后来C语言又做了多次改进。早期的C语言主要是用于UNIX系统。由于C语言的强大功能和各方面的优点逐渐为人们认识,到了80年代,C语言开始进入其他操作系统,并很快在各类大、中、小和微型计算机上得到了广泛的使用,成为当代最优秀的程序设计语言。

C语言的特点

C语言是一种结构化语言。

它层次清晰,便于按模块化方式组织程序,易于调试和维护。C语言的表现能力和处理能力极强,它不仅具有丰富的运算符和数据类型,便于实现各类复杂的数据结构,它还可以直接访问内存的物理地址,进行位(bit)一级的操作。由于C语言实现了对硬件的编程操作,因此C语言集高级语言和低级语言的功能于一体,既可用于系统软件的开发,也适合于应用软件的开发。此外,C语言还具有效率高、可移植性强等特点。

用高级语言编写的程序称为“源程序”,计算机不能识别和执行,而需要把用高级语言编写的源程序翻译成机器指令,通常有编译和解释两种方式。

编译方式是将源程序整个编译成等价的、独立的目标程序,然后通过连接程序将目标程序连接成可执行程序。

解释方式是将源程序逐句翻译,翻译一句执行一句,边翻译边执行,不产生目标程序,在整个执行过程中,解释程序都一直在内存中。

已经编写好的符合C语言语法要求的程序,叫做源程序。

一个C语言源程序从编写到最终实现结果,需要经过编辑、编译、连接和执行四个过程

125jz网原创文章。发布者:江山如画,转载请注明出处:http://www.125jz.com/5633.html

(0)
江山如画的头像江山如画管理团队
强!在线自动抠图网站-最强大的AI去背景神器
上一篇 2020年4月5日 上午8:10
第2课:编写第一个C语言程序
下一篇 2020年4月5日 上午9:04

99%的人还看了以下文章

  • myeclipse的视图显示:如何显示上下拆分的视图,design视图和Preview预览视图合并

    MyEclipse10打开JSP页面发现只有代码视图,想同时看到design视图和代码视图,如何把这两个视图显示出来? myeclipse显示上下拆分的design视图和代码视图方法 1、在JSP页面上右键单击,选择open with->web page editors,如果显示里没有web page editors,需要单击Other……,在里面选择…

    2018年10月10日
    6.1K0
  • Java向mysql数据库插入datetime类型数据实例(精)

    在Mysql数据库中日期跟时间有两种: 1、date类型,date类型也就是我们常见的储存yyyy-MM-dd类型的日期,它不能储存时间,也就是只能储存日期, 2、dateitme就是可以储存日期同时也可以储存时间。 datetime可以保存1000-01-01到 9999-12-31的日期。 上面mysql数据库中birthday字段类型设置的是datet…

    2018年5月2日
    20.2K0
  • Python编程案例-4行代码绘制股票趋势图(numpy+matplotlib)

    新手学习Python编程案例,每日编写一个小程序! import numpy as np import matplotlib.pyplot as plt 时间轴 = np.arange(10) #print(时间轴) 股票价格轴 = 时间轴 * 2 + np.sin(时间轴) * 5 #print(股票价格轴) plt.plot(时间轴, 股票价格轴) pl…

    2023年1月26日
    37.1K0
  • 单元测试步骤、单元测试策略,单元测试快速入门教程三

    工作性质不同决定了工作侧重点也不同,因此程序开发人员在单元测试过程中关注更多的是程序代码本身和已经实现的功能。因此,站在他们的角度看,单元测试的过程就是在编写测试方法之前: 首先考虑如何对方法进行测试; 然后编写测试代码; 下一步就是运行某个测试,或者同时运行该单元的所有测试,确保所有测试都通过。 下图从宏观的角度概括了单元测试的工作过程图。 1.单元测试进…

    2018年4月18日
    7.9K0
  • myeclipse集成的tomcat在哪个目录下

    myeclipse集成了Tomcat服务器,本文介绍了myeclipse集成的tomcat在哪个目录下?查看myeclipse集成的tomcat在哪个目录下的方法

    2020年2月6日
    16.8K0
  • Java Vector可实现自动增长的对象数组

    java.util.vector提供了向量类(Vector)以实现类似动态数组的功能。创建了一个向量类的对象后,可以往其中随意插入不同类的对象,即不需顾及类型也不需预先选定向量的容量,并可以方便地进行查找。 对于预先不知或者不愿预先定义数组大小,并且需要频繁地进行查找,插入,删除工作的情况,可以考虑使用向量类。 向量类提供了三种构造方法: public ve…

    2020年8月20日
    6.0K0

发表回复

登录后才能评论