matlab二维数组赋值问题

一个400行400列的数组 我希望它第一行1-10赋值为1其余为0,第二行10-20为1其于为0 以此类推 这样的数组怎么实训 高手帮帮忙

A=cell(1,40);
for i=1:40
A{i}=zeros(400,10);
A{i}(i,:)=1;
end
B=cell2mat(A);
B是你想要的矩阵。
顺便说一下,你要的那种形式只在第一行到第40行,第41行倒第400行是360行*400列的零矩阵.
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-08-27
给你编了个程序:
a=zeros(400,400);
for i=1:1:400
for j=1:1:10
a(i,10*(i-1)+j)=10*(i-1)+j;
end
end
a就是你要的矩阵。