0

假设我有一个类似这样的函数:

function [ c ] = input_args(m)

for i = 1 : m+1

    c{i} = inputdlg('Enter next m value');

end

end

现在我想更改它,以便在 for 循环的第 i 个阶段对用户的指令说类似“输入第 i 个 m 值”,其中i是 for 循环中的更改索引。我怎样才能做到这一点?

谢谢!

4

1 回答 1

0

字符串是一个字符数组,因此您可以像任何其他数组一样连接它们。您需要使用num2str将数字转换为可打印字符。

inputdlg(['Enter the ' num2str(i) 'th m value']);

更通用的解决方案是使用sprintf格式化您的字符串;用 sprintf 做同样的事情,你会使用:

inputdlg(sprintf('Enter the %dth m value', i));

您可能会发现它更具可读性(并允许您使用标准 fprintf 格式化选项)。

于 2012-04-21T13:47:46.080 回答