Matlab的输出函数注意事项(以sprintf和fprintf为例 )

1.Sprintf()函数

Matlab的官方解释为:

str = sprintf(formatSpec,A1,…,An)
[str,errmsg] = sprintf(formatSpec,A1,…,An)
str = sprintf(formatSpec,A1,…,An) 根据 formatSpec 的列顺序设置数组 A1,…,An 中数据的格式,并将结果返回到str。
如果操作失败,[str,errmsg] = sprintf(formatSpec,A1,…,An) 将以字符向量形式返回一条错误消息。否则,errmsg为空。
小汪同学理解的sprintf()函数是将其他变量,如数字,字符串等按照指定的格式转化为字符串形式,简单的说就是输出数据。

例1:

int a=16;

    b=a^2+a-a^3;

str_1=sprintf('16^2+16-16^3等于%d', b);

disp(str_1)

例2:

%% 本程序求解黄金分割率的比值
% r^2 - r - 1 = 0的解就是比值。
p = [1 -1 -1];
% 此数组代表了上式的二次项系数、一次项系数和常数项。
r = roots(p);
print_str = sprintf('r^2 - r - 1 = 0的结果是:%f和%f\n', r);
disp(print_str);

再补一点常识部分内容

int:%d
string:%s
float:%f
空格:%t
换行:%n

是不是忘记这些数据类型的区别了 小汪同学给您准备好了

一、定义不同

1、int为整数型,用于定义整数类型的数据 。

2、float为单精度浮点型,能准确到小数点后六位 。

3、double为双精度浮点型,能准确到小数点都十二位 。

4、char为字符型,用于定义字符类型的数据。

二、数据范围不同

1、int:数的范围为-(2的31次方-1)到(2的31次方-1),数字为-2 147 483 647~2 147 483 647。

2、double:表示的范围为+1.111111111111111111111*2^1023(1.后面52个1)为1.7*10^308。负数亦然。

3、float:整数极限为3.4*10^38,负数亦然。

4、char:-128- 127。

2.fprintf()函数:

官方解释是:
1)fprintf(formatSpec,A1,…,An) 设置数据的格式并在屏幕上显示结果。
2)fprintf(fileID,formatSpec,A1,…,An) 按列顺序将 formatSpec 应用于数组 A1,…An 的所有元素,并将数据写入到一个文本文件。fprintf 使用在对 fopen 的调用中指定的编码方案。
3)nbytes = fprintf(___) 使用前述语法中的任意输入参数返回 fprintf 所写入的字节数。
那小汪同学理解它的用法是

1.在屏幕中显示结果,其作用相当于disp函数,用法如下:

a=2022721;
b='数值是%d\n';
fprintf(b,a)

2.通常与fopen函数一起使用,其用法是首先使用fopen函数按照指定方法打开一个文件,并且获取这个文件的句柄,将数据按照指定格式写到这个文件中。
如下所示:

a=1:10;
fileID=fopen('xiaowangtongxue.txt','w');
fprintf(fileID,'%d\n',a);%位置,格式,内容%
fclose(fileID);

当然还有其他的输出函数 小汪同学与您下期不见不散

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值