给我一个问题,我应该找到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);
}
答案 0 :(得分:1)
您可以在printf中设置字段宽度。您将必须使用设置字段宽度的整数值,使用格式说明符指定宽度。例如,“%5d”或“%10d”。
如果要打印的值小于此数字,则结果将用空格填充。
根据您的情况,您可以按照以下方式修改printf
:
第一个printf
语句:
printf("%2d! = %20lli ", intIndex, lngFactoral);
第二条printf
语句:
printf(" %2d! = %20lli \n", intIndex, lngFactoral);
%2d
的左侧是因为您仅找到2位数字的阶乘,因此我们将设置字段宽度2。
类似地,%20d
用于右侧,因为最大数字20的阶乘永远不会超过20位数字。