查看: 179|回复: 3|关注: 0

[已解决] 怎么把数值型的1显示为1.0

[复制链接]

新手

7 麦片

财富积分


050


2

主题

4

帖子

0

最佳答案
有一个数组,前面的几列里都有一个数,从0.1、0.2一直向下排列,然后到了第10个元素,这个数就变成1了,导致这个元素和前几行的字对不上,会报错,所以想问下有没有什么办法能让这里的数显示为1.0而不是1吗?不能用vpa,因为必须要保持数值型格式。

入门

103 麦片

财富积分


50500


0

主题

93

帖子

15

最佳答案
  • 关注者: 1
发表于 2020-1-14 16:28:51 来自手机 | 显示全部楼层
用fprint之类的?其实没搞懂你的问题

新手

7 麦片

财富积分


050


2

主题

4

帖子

0

最佳答案
 楼主| 发表于 2020-1-14 17:04:49 | 显示全部楼层
hhh619 发表于 2020-1-14 16:28
用fprint之类的?其实没搞懂你的问题

就像这样
ks=[0.1:0.1:1];
for i=1:10
KL(i,:)=num2str(ks(i));
end
然后这样如果直接执行,ks的第九个就是0.9,第十个就是1,会导致KL这个矩阵各行不一样长,会出现问题,所以想问怎么把最后一个数弄成1.0而不是1,带着它后面的0一起赋值给这个字符串。

论坛优秀回答者

3

主题

1110

帖子

133

最佳答案
  • 关注者: 80
发表于 2020-1-14 22:08:46 | 显示全部楼层 |此回复为最佳答案
Nightmagic 发表于 2020-1-14 17:04
就像这样
ks=[0.1:0.1:1];
for i=1:10

KL(i,:)=sprintf('%.1f',ks(i));
估计你是想要这样的结果
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /2 下一条

快速回复 返回顶部 返回列表