我的输出中的间距在C中略微偏离

时间:2013-02-23 03:12:52

标签: c printf

700   =   17 + 683
702   =   11 + 691
704   =   3 + 701
706   =   5 + 701

正如你所看到的那样...... 3和5在错误的位置应该是:

700   =   17 + 683
702   =   11 + 691
704   =    3 + 701
706   =    5 + 701

我的代码:

fprintf(fpout, "%d   =   %d + %d\n", lower, primeNum1, primeNum2);

我假设我需要使用一些特殊技术来解决这个问题。有人可以帮忙吗。

2 个答案:

答案 0 :(得分:1)

您可以在%d之间加上一个数字来指定最小字段宽度。当转换后的值小于最小字段宽度时,字段将在左侧用空格填充。

fprintf(fpout, "%3d   =   %2d + %3d\n", lower, primeNum1, primeNum2);

当然,您可能需要根据lowerprimeNum1primeNum2的预期值来考虑适当的最小字段宽度。

答案 1 :(得分:1)

指定字段宽度:

printf(fpout, "%3d = %3d + %3d\n", lower, primeNum1, primeNum2);