2012-04-21 91 views
0

假設我有一個功能是這樣的:使用輸入對話框

function [ c ] = input_args(m) 

for i = 1 : m+1 

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

end 

end 

現在我想改變這種做法,該指令到用戶在第i個階段for循環表示「輸入我的m值」,其中i是for循環中的變化索引。我怎樣才能做到這一點?

謝謝!

回答

0

一個字符串是一個字符數組,因此您可以將它們像其他任何數組一樣連接起來。您需要使用num2str將數字轉換爲可打印的字符。

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

一個更普遍的解決辦法是使用sprintf格式化您的字符串;做同樣的事情的sprintf你可以使用:

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

,你可能會發現更可讀(並允許您使用標準的fprintf中的格式選項)。