matlab中如何创建动态数组

matlab中如何创建动态数组,比如我建立了各位大神,我想创建一个动态数组,于是我用语句cell(1,10),然后我想给这个数组赋值,于是我用cell(1,10)=[2,... matlab中如何创建动态数组,

比如我建立了各位大神,我想创建一个动态数组,于是我用语句cell(1,10),然后我想给这个数组赋值,于是我用cell(1,10)=[2,2,2,2](我的本意是使得这个动态数组前面几个元素改变,后面的元素还是空元素)
然后,拖拖的失败了。我知道这样在语法上是不对的,我想知道要达到我的目的应该怎么写。
先谢各位。
展开
 我来答
tianxiawulang
推荐于2018-05-14 · TA获得超过2.7万个赞
知道大有可为答主
回答量:4732
采纳率:89%
帮助的人:2536万
展开全部

1、如果想把[2,2,2,2]赋值给第10个元素,可以用下面两种做法之一(作用完全等同):

c{1,10}=[2,2,2,2]
c(1,10)={[2,2,2,2]}

 

2、如果想把[2,2,2,2]赋值给多个元素,可以用类似下面的做法:

[c{1:5}]=deal([2,2,2,2])

 

3、如果想把[2,2,2,2]的元素分配到cell数组的多个元素,可以用:

[c{1:4}]=deal(2,2,2,2)

如果数据存在一个变量中,且维数及元素数量未知,那么更通用一点的做法是

c=cell(1,10);
a=[2,2,2,2];
n=prod(size(a));
b=mat2cell(a(:),ones(1,n),1);
[c{1:n}]=deal(b{:})

 

希望对楼主有帮助。

maoxuchen000
2015-09-11 · TA获得超过1.5万个赞
知道大有可为答主
回答量:3286
采纳率:78%
帮助的人:466万
展开全部
1、如果想把[2,2,2,2]赋值给第10个元素,可以用下面两种做法之一(作用完全等同):
c{1,10}=[2,2,2,2]c(1,10)={[2,2,2,2]}
2、如果想把[2,2,2,2]赋值给多个元素,可以用类似下面的做法:
[c{1:5}]=deal([2,2,2,2])
3、如果想把[2,2,2,2]的元素分配到cell数组的多个元素,可以用:
[c{1:4}]=deal(2,2,2,2)如果数据存在一个变量中,且维数及元素数量未知,那么更通用一点的做法是
c=cell(1,10);a=[2,2,2,2];n=prod(size(a));b=mat2cell(a(:),ones(1,n),1);[c{1:n}]=deal(b{:})
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
刘贺great
2013-07-20 · TA获得超过1.6万个赞
知道大有可为答主
回答量:3829
采纳率:100%
帮助的人:1777万
展开全部
试试看:
clear all;clc;
a=cell(1,10);
for ii=1:5
a{1,ii}=[2,2,2,2];
end
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式