首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >MATLAB:我怎么能用fprintf或sprintf来打印矩阵和向量呢?

MATLAB:我怎么能用fprintf或sprintf来打印矩阵和向量呢?
EN

Stack Overflow用户
提问于 2015-11-01 14:49:11
回答 1查看 3.3K关注 0票数 0

我刚开始使用MATLAB软件,我有两个问题:

1)如果我想使用fprintf命令打印一个矩阵,并以字符串作为前缀,那么我该如何做呢?例如,要单独打印矩阵,我使用

代码语言:javascript
运行
复制
fprintf([repmat('%d\t', 1, size(r, 2)) '\n'], r');   

但是,在不使用disp函数的情况下,如何在fprintf中打印一个字符串,后面跟着矩阵呢?例如,如果我想打印:

代码语言:javascript
运行
复制
>>The matrix you inserted is [1 3; 4 6]

( 2)如何用向量做同样的事情(我知道这只是矩阵的一种特殊情况)?我实际上用的是,例如:

代码语言:javascript
运行
复制
>>vectorname=[1 5 2];
>>strtrim(sprintf('%d  ', vectorname));

向量的唯一数字也可以,但是如果我在spintf中插入一个字符串,结果是:

代码语言:javascript
运行
复制
 >>vectorname=[1 5 2];
 >>strtrim(sprintf('Your vector is:  %d  ', vectorname))

 >>Your vector is 1 Your vector is 5 Your vector is 2

我如何才能用一个命令(sprintf、fprintf、ecc.)来输入数字,其中一个通常是另一个??

非常感谢您的帮助!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-11-01 16:09:55

在这两种情况下,您都可以使用mat2str

第一例:

代码语言:javascript
运行
复制
input_mat = [1 3; 4 6];
sprintf(['The matrix you inserted is ' mat2str(input_mat)])
代码语言:javascript
运行
复制
ans =

The matrix you inserted is [1 3;4 6]

第二个案件:

代码语言:javascript
运行
复制
vectorname=[1 5 2];
sprintf(['Your vector is: ', mat2str(vectorname)])
代码语言:javascript
运行
复制
ans =

Your vector is: [1 5 2]
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33463446

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档