[英]Formatting for printf
我遇到了一个问题,我应该找到数字1到20的阶乘。我完成了,但是在示例中,我将控制台的格式设置为具有视觉吸引力。 这是我给的例子。 白盒子在那里,因为我应该自己找到答案。 因此可以忽略。
这就是我的模样。
除了printf,我们没有得到其他任何教育,所以我不知道有什么替代方法。
这是我的代码。
long long lngFactoral = 1;
int intNumber = 1;
for (int intIndex = 1; intIndex <= 20; intIndex ++ )
{
lngFactoral = lngFactoral * intIndex;
printf("%d! = %lli ", intIndex, lngFactoral);
intIndex++;
lngFactoral = lngFactoral * intIndex;
printf(" %d! = %lli \n", intIndex, lngFactoral);
}
您可以在printf中设置字段宽度。 您将必须使用设置字段宽度的整数值,使用格式说明符指定宽度。 例如,“%5d”或“%10d”。
如果要打印的值小于此数字,则结果将用空格填充。
在您的情况下,您可以按以下方式修改printf
:
第一条printf
语句:
printf("%2d! = %20lli ", intIndex, lngFactoral);
第二个printf
语句:
printf(" %2d! = %20lli \n", intIndex, lngFactoral);
左侧的%2d
是因为您仅找到2位数字的阶乘,所以我们将设置字段宽度2。
同样,在右侧使用%20d
,因为最大数字20的阶乘永远不会超过20位。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.