任何问题都有两面性,一门编程语言好学,对所有人来说都好学,这就会造成一个很直接的后果:会的人非常多。会的人一旦多了,所以,包括薪资之类的待遇,都会被拉低,这也就是经济学中供需关系的一个体现。

回到题主提出的MATLAB和C语言,先来分析下这两种语言,MATLAB是一门解释型语言,C语言是一种编译型语言。很多人可能对这种教科书式的解释很无奈,感觉没有什么营养,实际上这两种语言的这个特性,直接决定了他们的很多特点或者说限制了他们的很多应用方向。MATLAB作为解释型语言,相对于C语言编译型语言最短板的一点就是运行速度太慢。很多人可能会说,现在计算机硬体性能这么强,还有必要在乎这丁点速度?太有必要了!用MATLAB进行编程的,一般都是科学计算领域,这个领域一般需要处理的数据量大,运算量也大,很多情况下,一个程序跑下来,用大型计算机都得跑上好几天,更别说用我们的个人电脑了。从运行速度上来讲,C语言至少可以比MATLAB快30%以上,经过优化,甚至可以快好几倍(依赖于测试环境)。说完了运行速度,再来看下一门语言另个一特别重要的一面:开发速度。在科学计算或者模拟领域,MATLAB开发速度可以甩C语言好几个省。这得益于MATLAB丰富的工具箱,从这一点来说,如果从事的是一些比较成熟的科学领域研究,引用的都是一些已经成熟的演算法,那用MATLAB在开发速度上绝对省时、省力、省钱。最后一点,由于我这两种语言上学时都用过,结合我自身的学习心得再说一点。MATLAB虽说也是一门编程语言,但相对于其他编程语言的热门程度以及应用人数来说,太窄太少,在科学计算领域应用的多是由其特性决定的,在诸如桌面等其他方向,就显得鸡肋多了。读研时很多同学,关键演算法或核心程序在MATLAB运行测试出结果以后,都将程序转化成C语言、C++、Python等其他语言进行计算,或者导成模块,让其他语言进行调用了。而C语言作为一种高级语言的泰斗,能够活到现在经久不衰,足矣见得它的生命力和价值。在嵌入式领域自然是C语言的天下,在内核、驱动等和硬体关联性强、对运行速度要求高的领域,C语言没有敌人(替代者)。但由于C语言和底层关联性太强,指针等部分太过于抽象,对励志于从事顶层开发的童鞋来讲,学习这部分没有太大的必要(学习初期没必要,任何语言要想提高,必须学习指针),所以造成很多人对C语言望而却步。至于应该如何学习C语言,可以参考我写的文章。我是嵌入式精英训练营,带你走进嵌入式开发的精彩世界。。。


关于到底首先该学习哪一种编程语言?这个并没有一定之规。可以根据自己的具体工作需要进行编程语言的选择。从来没有听说过最好不要先学 C 语言,而应该先学习 MATLAB 语言的。如果你的工作需要使用 MATLAB 语言进行各种复杂的数学运算,那么你就可以首先学习 MATLAB 语言;但是如果在你的工作中根本就不需要进行各种复杂的数学运算,而是需要你编写和计算机操作系统比较紧密的软体,那么你就必须学习、并精通 C 语言编程。这就是我个人的亲身体会。因为在我的计算机编程工作中,由于根本就不涉及到需要使用各种复杂的数学运算的地方,所以我到现在也从来没有学习过 MATLAB 语言的编程;但是由于我的编程工作是和系统的相关性比较紧密的,所以我的 C 语言编程就比较熟练。


我的个人观点,想学什么无所谓,想学立刻去学,与其想来想去,不如立马行动。

MATLAB强大的数学工具,可以用于很多工程问题的数值处理、求解、模拟等,可以说功能上相当强大,但是到底它还只是一个工具,需要你掌握相应的数学知识才能用的好。而且必要线性代数的基础是不可缺少的,MATLAB的计算都是用矩阵进行和表达的,矩阵都不懂就说不上使用了。

C语言的应用范围很广,广到我都不知道该怎么举例子。C语言很基础可以为计算机编程打下基础,方便以后接触其他语言。并且C的兼容性好,单片机中C是使用最广泛,C强大但是取决于使用者。


你学习的目的是什么?MATLAB是数学演算法的集成平台,是给人跑模拟,搞数学计算用的。其要求相关的背景知识要过关,否则没有意义。C语言是计算机系必修的编程语言,同样要结合相关的学习内容。总之,你要清楚究竟是为什么学,如果想找一份工作,估计希望落空。


C语言是基础,matlab很多是直接生成C代码的


为什么突然要学matlab呢?如果不是数学或者物理建模相关的应用(当然matlab用途很广泛,这个只是最主要的部分),当然不应该贸然去学matlab了。同样,想学c语言也应该有一个充分的理由,然后才能判断合适不合适,哪一个更好。最好,如果在matlab和c语言之间踌躇的话,不如学python吧,从能力上c和matlab可以做的python基本都能做的了,而学习起来相对前两者都会简单一些


matlab是科研和工程研究利器,假如你的工作所涉及问题都是科学计算、工程模拟问题等等,那就好好学就是,如果业余爱好,这东西的绘图也很漂亮,拥有广泛的介面,能读大多数格式的文件,处理常见问题都很强大。

假如你是个演算法爱好者,那么学点C语言就足够了。


按照我的的来讲,我建议您先选择C语言进行学习,因为这样学别的语言更快,当然也可以学习Python进行学习可以关注微信公众号渗透云笔记,里面有我写的大量笔记,可以配合著视频,网站教程如http://u6.gg/sAND2这篇文章里的讲解,望采纳


先学习c语言吧,matlab是数学和演算法,有难度,不如以后开发应用,比如csharp和JAVA,除非你数学好,大概如此吧


推荐阅读:
相关文章