声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1001|回复: 3

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

[复制链接]
发表于 2008-9-20 21:30 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
在输出数据时,如何设置格式,使正数前有“+”,而负数前没有“+”?
回复
分享到:

使用道具 举报

发表于 2008-9-21 08:28 | 显示全部楼层

回复 楼主 zhanghongxing 的帖子

用if语句试试

评分

1

查看全部评分

发表于 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

评分

1

查看全部评分

 楼主| 发表于 2008-9-23 21:33 | 显示全部楼层
本帖最后由 ChaChing 于 2010-8-29 00:26 编辑

xiexie.我先试试啦!
谢谢,已解决。我只是在输出格式中加了+号,如“%+e”。
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-5-18 15:14 , Processed in 0.085945 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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