2010-05-08 42 views
0

我试图要求用户输入某个变量的值,但同时向他显示最后使用的值(在程序结束时,这些值被保存到一个文件中,并在程序开始时加载)。如何在提示中使用现有变量提示输入

像这样:

输入新的半径值(R = 12.6):
...用户输入12.7 ...
输入新pI值(PI = 3.14):
输入新的身高值(h = 30.0):

通常我会写的第一个与语句,那么阅读新一(Fortran语言,例如)。但在MATLAB中,我不知道如何用输入声明写出一些内容。有没有其他的获得输入的陈述?

+0

@MatlabDoug - MATLAB是好,我错在那里,但FORTRAN不再是一个缩写,而是一个名称,它是用小写。 – Rook 2010-05-11 01:19:22

+1

@Idigas所以它是:http://en.wikipedia.org/wiki/Fortran#cite_note-0猜猜显示,当我上次使用Fortran时,它是FORTRAN 77! :) – MatlabDoug 2010-05-11 13:44:26

回答

5

对此可以使用命令input,与sprintf结合使用。

%# set defaults 
radius = 12.6; 

%# ask for inputs 
tmp = input(sprintf('Enter new radius value (R=%4.2f)\n',radius)); 
%# if the user hits 'return' without writing anything, tmp is empty and the default is used 
if ~isempty(tmp) 
    radius = tmp; 
end 

作为替代方案,您可能想看看INPUTDLG

+0

正是我需要的。感谢乔纳斯! – Rook 2010-05-08 14:28:28