Matlab学习系列 (1) ——先从C语言谈起
 前言

 Matlab作为最强大的数学建模软件非常有必要系统的学习一下,目前我大概算是【粗略地懂些Matlab,很多语法需要现用现查】的水平,所以打算不定期地学一点,同时也记录在这里供大家交流学习。

——————————————

学任何一门计算机语言都得先理解其核心的编程思想,然后在该编程思想的指导下去学语法,否则学再多语法知识也达不到入门的水平。

多数人学编程都是从C语言开始的, C语言是最重要的基础语言,在于:

matlab难还是c语言难
————

1. 它的引导编程入门

比起其他编程语言,大概是最适合的了。

2. 它的通用语法

即适用于任何编程语言的基础语法本质,表示形式是次要的(比如整型用int;if...else是选择结构等等)。

3. 它的代码底层性

通常高级编程语言都是采用的【从大问题逐层细化到小问题,直到不能再小的问题】,这个
【不能再小的问题】要实现的话就离不开底层代码编程,C语言训练的恰恰是这个功底,这个功底也锻炼了阅读其他语言代码的能力。

同时,这也是C语言编程思想的体现——面向过程(一步一步具体地实现解决小问题的过程)。

当然要进一步训练底层代码的功底,离不开《数据结构》。

————


学C语言就是要真正学会上面三条,这样再学其他编程语言的时候,才会事半功倍,才会快速学会。

比如学C++或Java,它的面向过程部分,就是C语言改了几个命令名;基本只要专学C++和J
ave核心的【面向对象(它们的编程思想)】部分就可以了,而C语言底层功底训练,也为这部分的学习打下了基础。


但往往很多人,这1, 2, 3 条没学好,反而把一些C语言固有,而和其他语言相抵触的部分,时刻牢记在心,这就适得其反了。比如说,

“C语言的编程思想——面向过程”

基本上任何一门其他高级语言的核心编程思想都不是面向过程(面向过程训练,一个C语言就够了),你再带着面向过程的思想去学,根本就是不可能学会新语言的。这不是说面向过程没用,面向过程有用(见第3.条)但不是用在这坏事的。

所以,要学Matlab,首先要抛弃C语言那种【一个数值、一个数组元素地来操作....来循环....】的思想,转而强制自己接受Matlab的核心编程思想——向量化编程(通过向量、矩阵
来直接操作大块数据)。这也是下次的内容:

 Matlab学习系列 (2)——Matlab编程思想之向量化编程