MATLAB二维矩阵赋值和C语言相仿,除了以下几点差别:
下标从1开始而不是0;
索引使用(i,j)而不是[i][j];
可以一个语句对多个元素(包括整个矩阵)同时赋值。
你说的只能给第一行赋值肯定是谢的代码有错,以下是一个简单的例子:
A=zeros(5,4);for r=1:5, for c=1:4,A(r,c)=r*10+c;end, end
你可以对照一下,看问题出在哪里。
for循环可以有a=a+5这样的语句,但不能有a+=5,因+=不是MATLAB的操作符。但是要注意,MATLAB 的for循环是基于索引的,这意味着,假如你的循环是for a=...的表达式,你不可能像C语言里那样通过再循环体内部修改a的值去改变循环的次数。