【问题标题】:Formatting for printfprintf 的格式化
【发布时间】:2019-07-01 03:03:27
【问题描述】:

我遇到了一个问题,我应该找到数字 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);
}

【问题讨论】:

标签: c visual-studio-2017


【解决方案1】:

您可以在 printf 中设置字段宽度。您必须使用设置字段宽度的整数值来指定格式说明符的宽度。例如,“%5d”或“%10d”。

如果要打印的值比这个数字短,结果用空格填充。

在您的情况下,您可以通过以下方式修改您的printf

第一个printf 声明:

 printf("%2d! = %20lli ", intIndex, lngFactoral);

第二个printf声明:

printf("   %2d! = %20lli \n", intIndex, lngFactoral);

左边的%2d是因为你只找到2位数字的阶乘,所以我们将字段宽度设置为2。

同样,%20d 用于右侧,因为最大数 20 的阶乘永远不会超过 20 位。

【讨论】:

    猜你喜欢
    • 2010-10-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-18
    • 2013-08-19
    • 1970-01-01
    • 1970-01-01
    • 2019-10-19
    相关资源
    最近更新 更多