matlab 如何生成一个一行n列的行矩阵,矩阵中包含数字1:m

例子: n=6 m=3 随机生成[1 2 2 2 3 3] 或者[1 2 2 2 2 3]或者[1 1 2 2 3 3 ]等等 从1开始连续的数字,并且从小到大

这有点麻烦。

主程序

clc;clear all
c=generate(3,10);

函数程序

function K=generate(m,n)
K=zeros(n,1);
for i=1:n
K(i)=randi([1,m],1);
end
K=sort(K);
end

示例

c =

     1
     1
     1
     1
     2
     3
     3
     3
     3
     3

>>来自:求助得到的回答
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-03-07
x=ceil(rand(1,6)*3); %先生成随机数向量,ceil是向上取整
sort(x);%再排序追问

你好 这样产生的可能缺值
x =

1 1 1 1 1 2 2 2 4 4
里边缺了3

相似回答