c - 在 C 中格式化命令提示符输出的帮助

标签 c printf

#include <stdio.h>
#include <stdlib.h>

int power(int base, int power){
    int result, i;
    result = 1;
    for (i=0; i < power; i++){
        result *= base;
    }/*for*/
    return result;
}/*power*/

int main (){
    int n = 0;

    int exponent = 0;
    while(n < 10){
        int answer = power(2, n);
        float neganswer = 1.0 / (power(2,n));

        printf("%d %d %g\n", exponent, answer, neganswer);

        exponent++;
        n++;
    }/*while*/
    return EXIT_SUCCESS;

}/*main*/

当该程序运行时,第二个函数从 1 变为 512,这会将其余列向右移动 2。我将如何排列这些列?谢谢。

最佳答案

您可以将 printf 格式更改为:

printf("%d %3d %10g\n", exponent, answer, neganswer);

这会将参数格式化为特定宽度:

0   1          1
1   2        0.5
2   4       0.25
3   8      0.125
4  16     0.0625
5  32    0.03125
6  64   0.015625
7 128  0.0078125
8 256 0.00390625
9 512 0.00195312

关于c - 在 C 中格式化命令提示符输出的帮助,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18972079/

相关文章:

C : How do you input integers row by row into a 2 dimensional matrix and then get it back from a function to main()?

c++ - 如何制作自定义系统范围的鼠标光标动画?

c++:如何将换行插入到 sprintf 连接中?

c - 如果没有使用 openlog() 的网络,那么 syslog() 设施是什么

c - Valgrind 中的读取大小无效

math - 当 r < 0 时,(n - (~r % n) - 1) 和 (n - (abs(r) % n)) 之间有区别吗?

c++ - 设备上调用的 printf() 输出不完整

c - printf 运行在内核态还是用户态?

代码在服务器集群上打印 NaN,但在我的 OS X 机器上工作

php printf 将数字添加到输出