加菲 发表于 2008-5-19 18:50

如何循环输入10个数而不用for循环?

输入10个数放在矩阵t中

原程序:
disp('请输入十个数:')
for i=1:10;

t(i)=input('');

end

有没有办法不用for循环就能实现?还有在运行该程序时如果用空格来分隔输入的10个数会出错,如下
----------------
disp('请输入十个数:')
for i=1:10;
   t(i)=input('');
   end
请输入十个数:
1 2 3 4 5 6 7 8 9 0
??? 1 2 3 4 5 6 7 8 9 0
      |
Error: Missing operator, comma, or semicolon.
-----------------------
这是为什么?如果用回车就不会出错,难道必须用回车作为分隔符吗?

ch_j1985 发表于 2008-5-19 19:04

原帖由 加菲 于 2008-5-19 18:50 发表 http://www.chinavib.com/forum/images/common/back.gif
输入10个数放在矩阵t中

原程序:
disp('请输入十个数:')
for i=1:10;

t(i)=input('');

end
---- ...
这样输入十个数:

friendchj 发表于 2008-5-19 19:19

楼上的好像不对,应该输入一个数,回车一次。这样才能正常运行。

wwbeyondww 发表于 2008-5-19 19:20

disp('请输入十个数:')
t=str2num(input('','s'));
这种方式只能用空格或逗号等隔开了,回车就判断输入结束了.其间也没有加入判断输入是刚好是10个数据的语句.

ch_j1985 发表于 2008-5-19 19:28

原帖由 friendchj 于 2008-5-19 19:19 发表 http://www.chinavib.com/forum/images/common/back.gif
楼上的好像不对,应该输入一个数,回车一次。这样才能正常运行。

不用for循环的代码如下:

disp('请输入十个数:');
A=input('');

上面代码运行后,输入即可

加菲 发表于 2008-5-19 20:16

回复 4楼 的帖子

谢谢了啊,这正是我想要的^_^
页: [1]
查看完整版本: 如何循环输入10个数而不用for循环?