for i = 1:20 namestr = ['s' num2str(i) '=i']; eval(namestr); end 上面的代码可以生成s1~s20一组值,用for循环不只给变量赋值,还规定了变量名 注意’s’与num2str之间和num2str与’=i’之间都要加空格 eval函数 执行文本中的 MATLAB 表达式 相当于把eval函数的参数直接输入在命令行窗口执行 比如一个两个有参数的函数,生成一组由不同参数的此函数返回的变量时,为了好区分,变量名中就可以带有两个参数的值,就可以嵌套两层for循环,循环体中用eval函数来达到目的。