c - 打印 printf 中正数的前导 '+'

我有一个温度转换程序作为作业,我已经完成了。该程序中有许多打印温度的 printf 语句。现在负温度按我想要的方式打印,但正温度打印时没有前导 + 符号。

现在让 printf 打印正数的前导 + 符号的最佳方法是什么。我能想到的就是改变

printf("Min temp = %d\n",max_temp)

if(max_temp > 0)
    printf("+");
printf("Min temp = %d\n",max_temp)

但这需要对程序进行许多更改:(

另一种选择是编写我自己的打印函数并将这个逻辑放在那里。你有什么建议?

最佳答案

您可以使用 printf+ 标志打印带有前导 + 符号的正数:

printf("%+d %+d",10,-10); // prints +10 -10

关于c - 打印 printf 中正数的前导 '+',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3589242/

相关文章:

formatting - d3.js:tickformat - 添加一个 % 符号而不乘以 100

python - 如何使用 Python 的 optparse 格式化位置参数帮助?

date - 如何使用 PowerShell 将 'date-1' 格式化为 mm-dd-yyyy?

android - 获取 Google Play 商店应用 HTML 动态徽章

c - printf 中的可变大小填充

c++ - 如何使用boost将日期时间格式化为字符串?

image - 子图的垂直对齐 LATEX

.net - 格式化负 TimeSpan

python - 将长数字格式化为字符串

java - 用科学计数法格式化 double 值