• 【matlab】输出显示函数 sprintf()&disp()


    disp()功能类似于c语言中的print;java语言中的System.out.println();

    Matlab的disp()函数  :

    1.输出字符串:

    >>disp('my test')

    my test

    2.输出数字:

    >> test=3;

    >> disp(test)

    3

    3.同时输出字符串和数字:

    >> test=3;

    >> disp(['my test=',num2str(test)])

    my test=3


    sprintf和disp的区别 :

    >> disp('pi=',pi)
       Error using ==> disp 
    Too many input arguments.

    ---------------------

    如上,想把字符串pi=和变量pi的值显示在一行上,试用disp(′pi=′,pi),回答这是非法的。

    -->应该disp(['pi=',num2str(pi)]),disp里面要是一个字符串,所以需要转换一下,用[]连接2个字符,使用num2str转换。

      disp(['圆周率=',num2str(pi)]) disp只显示一个str类数据,所以用[…] .  其中数据用“,”隔开。

    -->或,可用sprintf函数,它可把数据按要求的格式转换为字符串,再把它与需要显示的字符串组装成一个长字符串,使显示格式非常灵活,人机界面更为友好。

    如键入:

      st=sprintf(′ 圆周率pi= %8.5f′,pi);

      disp(st)
    结果为:
      圆周率pi=3.14159
    其中,%为数据格式符,f表示十进制浮点,8.5表示数字的长度为8位,小数点后5位。

    从%到f之间的字符都是不显示的,它只指出显示数据pi的格式。

    ---------------------------------------------------------------------------

    >> disp(sprintf('圆周率pi= %8.5f',pi))
    圆周率pi=  3.14159

    sprintf命令是从C语言中的同名命令演化来的,sscanf则是它的逆命令,相仿的还有fprintf和fscanf。

    再举一个用sprintf的例子:

    它为y的两列规定了不同的显示格式。

    x = 0: 10: 90;

    y = [x; sin(x*pi/180)];

    disp(sprintf (′%10.2f %12.8f ′,y))

    结果为:

     0.00    0.00000000

    10.00   0.17364818

    80.00   0.98480775

    90.00   1.00000000

    ------------------------

  • 相关阅读:
    java 后台校验格式
    spring AOP 实现事务和主从读写分离
    【Day5】项目实战.CSDN热门文章爬取
    【Day5】3.反爬策略之模拟登录
    【Day5】2.反爬策略之代理IP
    【Day5】1.Request对象之Header伪装策略
    【Day4】5.Request对象之Http Post请求案例分析
    【Day4】4.Request对象之Get请求与URL编码
    【Day4】3.urllib模块使用案例
    【Day4】2.详解Http请求协议
  • 原文地址:https://www.cnblogs.com/wxl845235800/p/6686093.html
Copyright © 2020-2023  润新知