zhanghongxing 发表于 2008-9-20 21:30

在输出数据时,如何设置格式,使正数前有“+”,而负数前没有“+”?

在输出数据时,如何设置格式,使正数前有“+”,而负数前没有“+”?

ch_j1985 发表于 2008-9-21 08:28

回复 楼主 zhanghongxing 的帖子

用if语句试试

sogooda 发表于 2008-9-23 20:33

fprintf的输出格式控制里有一个可以控制是否输出"+""-"的选项,但是好像不能满足楼主的要求。姑且也写在这里吧,供大家参考。
Minus sign (-)Left-justifies the converted argument in its field%-5.2d
Plus sign (+)Always prints a sign character (+ or -)
%+5.2dSpace characterInserts a space before the value
% 5.2dZero (0)Pads with zeros rather than spaces%05.2d

比如
>>sprintf('%-g\t%-g',-2.6,3.5)
ans =
-2.6        3.5

>> sprintf('%+g\t%+g',-2.6,3.5)
ans =
-2.6        +3.5

zhanghongxing 发表于 2008-9-23 21:33

本帖最后由 ChaChing 于 2010-8-29 00:26 编辑

xiexie.我先试试啦!
谢谢,已解决。我只是在输出格式中加了+号,如“%+e”。
页: [1]
查看完整版本: 在输出数据时,如何设置格式,使正数前有“+”,而负数前没有“+”?