我尝试使用fscanf()命令读取文本文件。文本文件包含一个年表(在第一列中),在该行中是该年每个月的降雨量。没有什么是科学记数法。该文件名为" OctavilleRainfall.txt",包含以下内容:
1988 9.2 5.4 5.6 1.2 2.2 0.1 0.0 0.0 0.1 0.0 0.4 2.3
1989 12.3 3.4 2.1 1.9 1.2 0.5 0.1 0.0 0.3 0.3 0.5 2.1
1990 10.2 6.7 3.3 1.3 1.1 0.2 0.2 0.0 0.1 0.2 0.3 1.9
1991 9.0 2.3 4.8 0.7 0.6 1.1 0.0 0.0 0.0 0.1 0.6 3.4
我目前的代码如下:
file = fopen('OctavilleRainfall.txt');
A = fscanf(file,'%f',[13 inf])
但是当A显示时,它是科学记数法。
我不确定为什么它采用科学记数法,因为我使用格式化命令f
而不是e
。我不需要科学记谱法就可以完成我的工作。对于如何解决这个问题,有任何的建议吗?非常感谢。
答案 0 :(得分:0)
问题不在于fscanf()
,而在于Matlab使用的显示格式。尝试将其更改为其他格式。只需输入:
format shortG
请注意,显示格式不会更改任何执行的计算,因此不会影响您的工作。