num2str((rng'*(sp(t)-sa(t)))+ sa(t),'%2.2g')

时间:2018-06-22 16:49:35

标签: matlab

我对MATLAB脚本的下一行有疑问。 “%2.2g”在此行中是什么意思?我知道它用于格式化数字符号。还有其他选择将其更改为10 ^ 1、10 ^ 2、10 ^ 3吗?谁能找到一些可供我阅读的资源?

num2str((rng'* (sp(t)-sa(t))) + sa(t),'%2.2g')

1 个答案:

答案 0 :(得分:1)

  1. %a.bg

    • a :代表数字的宽度

    • b :打印的小数位数。

    • g :选择更紧凑的%e或%f。 (不显示零)。

    例如:

    >> sprintf('%2.2g', 1.23)
    
    ans =
    
    1.2
    
    >> sprintf('%2.2g', 123000)
    
    ans =
    
    1.2e+05
    

    请注意,它会舍入结果。

  2. 对于指数表示法,只需使用%2.2e

  3. 有关格式设置规则,请查看文档:{​​{3}}