matlab 输出一行字,MATLAB输出结果的格式设置

本文介绍了在MATLAB中使用fprintf函数设置输出结果格式,包括定点小数、科学表示法和整数表示法,并展示了如何将输出结果保存到文件中,通过实例详细解析了fprintf的用法及其在脚本程序中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

4.5 教程:MATLAB输出结果的格式设置

在本章的前面几节里,我们用fprintf( )函数把文本消息输出到屏幕上。在这一节,读者将要学习用fprintf(

)函数把变量的值输出到屏幕上或一个结果文件里,还要学习如何对这些变量的值和相应的文字说明进行格式设置。

a4c26d1e5885305701be709a3d33442f.png

fid是文件标识符,当结果输出到屏幕时,可以省略fid。单引号之间的内容是每个变量的输出格式转换说明。每个输出格式说明以%开始,后面紧跟与该变量有关的字符串(可选)、小数位数和格式类型。格式类型有:

f=定点小数表示

e或E=科学表示法

i=整数表示法

例如,%8.1e表示以科学表示法输出该变量的值,整个值占用8个字符,小数位数取1位。

字符串可以包含像\n这样的特殊字符,它表示换到下一行。还有其他几个特殊字符,如\t表示tab。在MATLAB的帮助文档中搜索fprintf(

)的用法,就会看到有关fprintf( )函数的各种格式选项。对于大多数应用,本节介绍的这些选项已经足够了。

为了说明fprintf( )函数的用法。我们分析表4-2中所示的例子。在这些例子里,m=12, d=7532.1234。

在前一节的Triangle脚本程序里,每个三角形由边长x、y和h确定。每找到一个三角形,我们都希望把三边的长度显示在同一行里。

在Triangle脚本里,找到在屏幕上输出x、y和h的行,用一个fprintf(

)函数把它们输出到同一行里。此外,修改最后一行,这一行输出计数器m的值。其他值都不变。

a4c26d1e5885305701be709a3d33442f.png

表4-2 fprintf命令的示例

需要注意的是,第22行的"\n"字符的作用是,在输出每个三角形的x、y和h的值后,自动换行到下一行。在第26行里,字符串的开始有一个"\n"字符,这会使在最后一个三角形输出后,跳过一行,输出这个字符串。而字符串后面的"\n",会使提示符显示在下一行的行首。

保存修改后的脚本程序,在命令窗口里,输入clc命令,清除屏幕,运行Triangle脚本程序,结果如图4-22所示。

a4c26d1e5885305701be709a3d33442f.png

我们很容易把屏幕上的输出结果复制到Word或Excel文档里。但是,如果在屏幕上输出大量的数据,我们有时候希望直接把数据保存到一个结果文件里。为此需要先定义文件名。这可以用fopen命令实现。定义一个文件名的方法如下:

a4c26d1e5885305701be709a3d33442f.png

把filename这个文件的标示符赋给变量fid(使用其他变量也可以)表示。如果生成的是一个文本文件,最好在文件名后加上.txt扩展名。这样,当我们在Windows里双击这个文件名,就可以用默认的文本编辑器(通常是记事本程序)打开这个结果文件。文件的属性(attribute)用wt表示,它表示写入(write)文本文件(text)。如果这个文件还不存在,执行这个命令后,就会建立这个文件。如果系统中已存在这个文件,则它的全部内容会被新写入的内容覆盖。如果我们希望在一个已经存在的文件的末尾添加内容,要使用at属性。

现在要把Triangle程序的结果保存到output.txt文件里,需要把这个程序修改成如下的结果:

a4c26d1e5885305701be709a3d33442f.png

a4c26d1e5885305701be709a3d33442f.png

第9行的fopen命令建立一个具有写入属性的文件。第10行和第11行用于写入列标题。因为列标题只需写入一次,因此必须放在循环之前。fprintf(

)函数的第一个参数是fid,表示把变量输出到文件里,而非屏幕上。此外在第26行里,增加了fid标识符。注意当我们用fprintf(

)函数把输出结果保存到文件时,最后要在行尾加一个分号。否则会在命令窗口显示写入到文件里的字符个数。第30行输出符合要求的三角形个数。这里的fprintf(

)函数并没有fid这个标识符,因此,它会把输出结果显示在屏幕上,而不是结果文件里。

保存并运行这个脚本文件。

现在只有三角形的个数显示在屏幕上,如图4-23所示。

a4c26d1e5885305701be709a3d33442f.png

我们注意到,在当前目录窗口里多了一个output.txt文件,如图4-24所示。这个文件可以用记事本、Word或Excel,甚至用MATLAB的编辑器打开。要想在MATLAB的编辑器里打开这个文件,只需要双击当前目录窗口的文件名。

这个文件的内容如图4-25所示。

a4c26d1e5885305701be709a3d33442f.png

最后,把脚本中第13行和第14行的x和y的上限值修改为1000,保存并运行这个文件。

在命令窗口里,我们看到有456个边长为整数的三角形符合要求。如果打开output.txt文件,就会在这个文件里看到全部的456个答案。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值