printf格式化输出

2025-04发布4次浏览

printf格式化输出

在C语言中,printf 是一个非常重要的函数,用于向标准输出(通常是屏幕)打印格式化的字符串。它允许我们控制输出的格式,包括整数、浮点数、字符等不同数据类型的显示方式。

基本语法

printf 函数的基本语法如下:

int printf(const char *format, ...);
  • format 是一个格式化字符串,包含普通字符和格式说明符。
  • ... 表示可变参数列表,这些参数将根据格式说明符进行格式化输出。

格式说明符

格式说明符以 % 开头,后面跟着一个或多个字符来指定如何显示相应的变量值。以下是一些常用的格式说明符:

格式说明符描述示例
%d有符号十进制整数printf("%d", 123); 输出 123
%u无符号十进制整数printf("%u", 456); 输出 456
%f浮点数printf("%f", 12.34); 输出 12.340000
%c单个字符printf("%c", 'A'); 输出 A
%s字符串printf("%s", "Hello"); 输出 Hello
%%百分号符号本身printf("%%"); 输出 %

实践步骤与代码示例

示例1:基本格式化输出
#include <stdio.h>

int main() {
    int a = 10;
    float b = 20.5;
    char c = 'X';
    
    printf("Integer: %d\n", a);
    printf("Float: %f\n", b);
    printf("Character: %c\n", c);

    return 0;
}

输出结果:

Integer: 10
Float: 20.500000
Character: X
示例2:浮点数精度控制

可以通过在 %f 前添加小数点和数字来控制浮点数的精度。

#include <stdio.h>

int main() {
    double pi = 3.1415926535;

    printf("Default: %f\n", pi);
    printf("Two decimal places: %.2f\n", pi);
    printf("Five decimal places: %.5f\n", pi);

    return 0;
}

输出结果:

Default: 3.141593
Two decimal places: 3.14
Five decimal places: 3.14159
示例3:宽度和对齐

可以使用 - 来指定左对齐,以及使用数字来设置最小字段宽度。

#include <stdio.h>

int main() {
    printf("|%10s|\n", "hello");
    printf("|%-10s|\n", "hello");

    return 0;
}

输出结果:

|     hello|
|hello     |