关于splabf在Matlab中的问题

时间:2011-10-01 06:25:32

标签: matlab printf number-formatting scientific-notation

如何在Matlab中打印如下....

0.01000E+02

我试过了

sprintf('%12.5e',[0.01000E+02])

它正在给我

1.00000e+000

2 个答案:

答案 0 :(得分:1)

您的格式有点具体。你应该考虑编写自己的输出函数。

但有几点指示:

  • 使用upper
  • 制作大片
  • 通过正则表达式在exp编号中只有2位数。 new_string = regexprep(old_string,'\d(\d{2})$','\1')
  • exp表示中前导0的东西不是标准的 - 所以也许乘以1e2,打印浮点数然后附加E+02

答案 1 :(得分:1)

如果我理解了您的格式,那么['0.0' strrep(sprintf('%12.5E',v*100), '.', '')](您的价值为v)就应该有效。