Печать в командном окне без 'ans =' в matlab?
когда я использую sprintf, результаты показывают следующее:
sprintf('number=%d %d %d',a,b,c)
sprintf('or %d',h)
ans =
number= 5 4 2
ans =
or 2
Как я могу отобразить результаты без ans =
препятствует их ?
2 ответов
резюме
1: disp(['A string: ' s ' and a number: ' num2str(x)])
2: disp(sprintf('A string: %s and a number %d', s, x))
3: fprintf('A string: %s and a number %d\n', s, x)
подробности
цитата http://www.mathworks.com/help/matlab/ref/disp.html (отображение нескольких переменных в одной строке)
существует три способа отображения нескольких переменных в одной строке в командной Окно.
(1) объедините несколько строк вместе с помощью оператора []. Преобразуйте любые числовые значения в символы с помощью функции num2str. Затем используйте disp для отображения строки.
name = 'Alice';
age = 12;
X = [name,' will be ',num2str(age),' this year.'];
disp(X)
Alice will be 12 this year.
(2) вы также можете использовать sprintf для создания строки. Завершите команду sprintf точкой с запятой, чтобы предотвратить отображение "X =". Затем, нажмите кнопку disp, чтобы отобразить строка.
name = 'Alice';
age = 12;
X = sprintf('%s will be %d this year.',name,age);
disp(X)
Alice will be 12 this year.
(3) кроме того, используйте fprintf для создания и отображения строки. В отличие от функции sprintf, fprintf не отображает текст "X=". Однако вам нужно закончить строку метасимволом newline (\n), чтобы правильно завершить ее отображение.
name = 'Alice';
age = 12;
X = fprintf('%s will be %d this year.\n',name,age);
Alice will be 12 this year.