下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、MATLAB与C语言的异同MATLAB 是一种科学计算软件,也是当今最优秀的科技应用软件之一,专门以矩阵的 形式处理数据。它以强大的科学计算和可视化功能,简单易用、开放式可扩展环境,特别是 所附带的三十多种面向不同领域的工具箱支持,使得它在许多科学领域成为计算机辅助设计 和分析、算法研究和应用开发的基本工具和首选平台。它作为一种计算工具和科技资源,可 以扩大科学研究的范围,提高工程生产的效率,缩短开发周期,加快探索步伐,激发创作灵 感。作为一种计算机语言,一种用于科学工程计算的高效率的高级语言,MATLAB具有其 他高级语言难以比拟的一些优点:编写简单、编程效率高、易学易懂。与其他语言相比,M
2、ATLAB 的语法更简单,更贴近人的思维模式。因此, MATLAB 语言也被通俗地称为“演算纸式” 的科学计算语言。在控制、通信、信号处理及科学计算等领域中, MATLAB 都被广泛地应 用,已经被认可为能够有效提高工作效率、改善设计手段的工具软件。而C语言是一种面向问题的程序设计语言,也是目前国际上流行的一种结构化的程序 设计语言,语言处理程序采用的是编译程序。它既有高级语言的特点,又具有汇编语言 的特点。它可以作为系统设计语言,编写工作系统应用程序,也可以作为应用程序设 计语言,编写不依赖计算机硬件的应用程序。因此,它的应用范围广泛,深受广大程 序设计者的欢迎。在操作系统和系统使用程序以及
3、需要对硬件进行操作的场合, 用 C 语言明显优于 其它解释型高级语言,有一些大型应用软件也是用 C语言编写的。C语言具有绘图能 力强,可移植性,并具备很强的数据处理能力,因此适于编写系统软件,三维,二维 图形和动画。同时,它也是是数值计算的高级语言。C 语言具有如下特点 :简洁紧凑、灵活方便C 语言一共只有 32 个关键字,9 种控制语句,程序书写自由,主要用小写字母表示。它把高级语言的基本结构和语句与低级语言的实用性结合起来,C 语言可以象汇编语言一样对位、字节和地址进行操作 , 而这三者是计算机最基本的 工作单元。运算符丰富C的运算符包含的范围很广泛,共有种34个运算符。C语言把括号、赋值
4、、 强制类型转换等都作为运算符处理, 从而使 C 的运算类型极其丰富表达式类型多 样化,灵活使用各种运算符可以实现在其它高级语言中难以实现的运算。数据结构丰富C 的数据类型有:整型、实型、字符型、数组类型、指针类型、结构体类型、共用体类型等。能用来实现各种复杂的数据类型的运算。并引入了指针概念 ,使 程序效率更高。另外 C 语言具有强大的图形功能 , 支持多种显示器和驱动器。且 计算功能、逻辑判断功能强大。C 语言是结构式语言结构式语言的显著特点是代码及数据的分隔化 ,即程序的各个部分除了必要的信息交流外彼此独立。这种结构化方式可使程序层次清晰 , 便于使用、维护以 及调试。 C 语言是以函数
5、形式提供给用户的 ,这些函数可方便的调用 ,并具有多种 循环、条件语句控制程序流向 ,从而使程序完全结构化。C 语法限制不太严格,程序设计自由度大虽然 C 语言也是强类型语言,但它的语法比较灵活,允许程序编写者有较 大的自由度。C 语言允许直接访问物理地址,可以直接对硬件进行操作 因此既具有高级语言的功能, 又具有低级语言的许多功能, 能够象汇编语言 一样对位、字节和地址进行操作 ,而这三者是计算机最基本的工作单元,可以用 来写系统软件。C 语言程序生成代码质量高,程序执行效率高一般只比汇编程序生成的目标代码效率低 1020%。C 语言适用范围大,可移植性好C语言有一个突出的优点就是适合于多种
6、操作系统 ,如DOS、UNIX,也适用 于多种机型。虽然 MATLAB 与 C 语言都有编程的功能,但是二者在编程方面存在许多不同的 地方。数据类型MATLAB的数据类型有常量、变量、字符串、复数等,C语言则有常量、变量、 标识符、整型数据、实型数据、字符型数据等。可见, C 语言的数据类型的划分要比 MATLAB 的细致。而且,相同的数据类型在这两种语言中的定义及用法也有所不同。在常量方面,值得一提的是,MATLAB中复数类型常量可以直接写成手写格式, 这是MATLAB与其他计算机语言的明显不同之处。C语言的常量可以是任何基本类型 的值,就范围而言,C语言的常量范围要较MATLAB的大。在变
7、量方面,二者的变量名的规定有明显不同。 MATLAB 的变量名必须是不包括 空格的单个词,且区分大小写。变量名的字符数也有限制,最多不超过31 个字符。变 量名必须以字母打头,之后可以是任何字母、下划线或者数字。另外,许多标点符号 在MATLAB中有特殊含义,变量名不允许使用。此外,MATLAB中还有一些默认的特殊变 量,它们有确定的形式和意义,使用时应加以注意。女口: ans是用于结果的默认变量名, pi 表示圆周率等。与之对比, C 语言的变量名的规定就比较统一、规范。其对不同的 数据类型有各自特定的变量名,如 int 代表整型变量,代表 float 单精度实型变量, double 则是双
8、精度实型变量, char 是字符型变量的变量名。在字符串方面,MATLAB中的字符串是由单引号括起来的简单文本,一般是ASC II值的数值数组,以它作为字符串表达式进行显示。因为字符串是数值数组,所以它 们可以用MATLAB中所有可利用的数组操作工具进行操作。而C语言中的字符串常量 是用一对双引号括起来的字符序列,可以由任意多个字符组成。值得注意的是,为了 能在 C 语言中正确地处理字符串常量, C 语言规定:“在每一个字符串的结尾都加上一 个字符0,作为字符串的结束标志。”这样, C 语言中字符串在内存中的字符个数 要比实际表达式中的字符数多 1个。在复数方面, MATLAB 最强大的功能之
9、一就体现在此,如前面所言, MATLAB 对复数不需做特殊处理,它的复数类型常量可以直接写成手写格式。MATLAB认识复 数,并用预定义变量和作为虚数单位,而且复数的数学运算可以写成与实数相同的形式。而对于C语言,它则无法做到,需要对复数进行特殊处理。总的来说,C语言的数据类型划分得比较细致,相比较而言,MATLAB就“粗糙” 一些,这与二者各自所具有的和侧重的功能有关。 C 语言用于编制系统程序和其他应 用程序,所要处理的量范围多,数量广,故而其对数据类型必须细致划分。而MATLAB 用于编程时涉及到的主要是具体的工程方面的实际问题,接触到的量的范围相对小些, 因而就可以不必划分得十分细致了
10、。表达式在 MATLAB 中,书写表达式的规则和“手写算式”几乎完全相同。表达式由变量 名、运算符和函数名组成,按照与常规相同的优先级从左至右执行运算。 C 语言的表达 式分为算术表达式、赋值表达式和逗号表达式等。优先级由高到低是:()、单目+和单 目-、*、和%、+和-。运算符如前面所言, C 语言的运算符非常丰富,主要有算术运算符、关系运算符、逻辑运 算符与按位运算符等。此外,还有一些完成特殊任务的运算符。并且, C 语言中算术运 算时,结果的显示类型与运算符两边的数据类型有关。如:72 的结果为3, 7.02.0 的结果为 3.5。有些运算符对参与运算的量的数据类型还有特定要求,如求余运
11、算只能 在两个整型数据之间进行。相反的, MATLAB 的运算符就比较简单。值得注意的一点是, MATLAB 中用左斜杠或右斜杠分别表示“左除”或者“右除”运算。对标量而言,两者 的作用没有什么区别,但对于矩阵而言,两种运算将产生不同的结果。 C 语言中就不存 在这种情况,除法运算用左斜杠表示。函数MATLAB 的函数库是非常丰富的,有数组函数、矩阵函数、关系函数和逻辑函数等 作为一种科学工程计算语言,其提供的数学计算函数较多。在数组计算中,针对标量的 一些基本函数,如三角函数、对数函数、指数函数和复数运算函数等,都能运用于数组 计算。MATLAB除了支持传统的数学运算外,还支持关系和逻辑运算
12、。MATLAB更突出的 优点是其提供了许多工程计算中所需的一些特殊函数,满足了科技工作者的需要。C语言提供的函数在数量上比不上MATLAB,而且一些特殊的函数没有提供,这就 使得MATLAB在诸多工程运用领域的显示了超强的功能和优势。总的来讲,MATLAB与C语言所具有的功能是不同的。C语言精于编程,而MATLAB 的功能则是多方面的。可以说C语言是一名编程的“专业选手”,MATLAB则是一个“全能 人才”。MATLAB的基本功能如下:数学运算功能。它包括矩阵运算和数值分析算法等。2D 和 3D 图形显示功能。交互式的高级编程语言一M语言编程功能。工具箱函数功能。编译功能。使 MATLAB 能够同其他高级编程语言进行混合应用,取长补短, 以提高程序的运行速率,丰富程序开发的手段。Simulink 仿真功能。它的建模范围广泛,提供了丰富的功能块及不同的专业模 块集合。( 7) Stateflow 交互式设计功能。8) 自动代码生成功能。通过近一段时间的学习,我印象比较深刻的是 MATLAB 强大的图形绘制能力。 MATLAB 的图形绘制能力包括二维绘图和三维绘图两大部分。其中,二维绘图可以实 现图标绘制、科学曲线绘制和各种专业数据的可视化显示
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024-2030年中国大型振动试验机行业市场分析报告
- 2024-2030年中国即时通讯(im)行业竞争格局及投资创新模式分析报告
- 眉山职业技术学院《电子商务概论》2023-2024学年第一学期期末试卷
- 2024年度食品代加工与产品质量追溯协议3篇
- 2024年标准化物业租赁协议模板汇编版B版
- 2024年物联网农业技术开发与合作合同
- 2024年标准股权转让协议一
- 马鞍山师范高等专科学校《现场节目主持实践》2023-2024学年第一学期期末试卷
- 2024年城市综合体土地房屋股权转让与建设合同范本3篇
- 2024年度特色民宿商品房承包销售合同3篇
- YY/T 0251-1997微量青霉素试验方法
- YC/T 559-2018烟草特征性成分生物碱的测定气相色谱-质谱联用法和气相色谱-串联质谱法
- GB/T 29309-2012电工电子产品加速应力试验规程高加速寿命试验导则
- 齐鲁工业大学信息管理学成考复习资料
- 公务员面试-自我认知与职位匹配课件
- 中频电治疗仪操作培训课件
- 柔弱的人课文课件
- 动物寄生虫病学课件
- 电梯曳引系统设计-毕业设计
- 三度房室传导阻滞护理查房课件
- 讲课比赛精品PPT-全概率公式贝叶斯公式-概率论与数理统计
评论
0/150
提交评论