首页 > 编程笔记 > C语言笔记

C语言printf()的一般用法

在C语言中,printf() 是最常用的输出函数之一,它使得程序员可以用各种格式向控制台输出文本和数据。


printf() 函数的基本语法如下:

int printf(const char *format, ...);

这个函数接受一个格式化字符串作为第一个参数,后面可以跟随零个或多个额外的参数。格式化字符串中的特殊占位符会被后续参数的值替换。printf() 函数返回输出的字符数,如果出错则返回负值。

格式化字符串

格式化字符串是 printf() 函数的核心,它包含普通文本和格式说明符。格式说明符以百分号%开始,后跟一个或多个字符,用于指定如何格式化和输出数据。


以下是一些常用的格式说明符:


让我们看一个简单的例子:

#include <stdio.h>

int main() {
    int age = 25;
    float height = 1.75;
    char grade = 'A';
    char name[] = "Alice";

    printf("Name: %s\nAge: %d\nHeight: %.2f m\nGrade: %c\n", name, age, height, grade);

    return 0;
}

这个程序的输出将是:

Name: Alice
Age: 25
Height: 1.75 m
Grade: A

格式说明符的修饰符

格式说明符可以包含修饰符来进一步控制输出格式。一些常用的修饰符包括:


让我们看一个使用这些修饰符的例子:

#include <stdio.h>

int main() {
    int num = 42;
    float pi = 3.14159;

    printf("Number: %5d\n", num);
    printf("Pi: %+.3f\n", pi);
    printf("Padded number: %05d\n", num);

    return 0;
}

这个程序的输出将是:

Number:    42
Pi: +3.142
Padded number: 00042

转义序列

printf() 函数还支持特殊的转义序列,用于输出特殊字符或控制输出格式。一些常用的转义序列包括:


这里有一个使用转义序列的例子:

#include <stdio.h>

int main() {
    printf("Hello\tWorld!\n");
    printf("This is a \"quoted\" text.\n");
    printf("Backslash: \\\n");

    return 0;
}

输出将是:

Hello   World!
This is a "quoted" text.
Backslash: \

高级用法

printf() 函数还有一些高级用法,如动态宽度和精度、参数编号等,这些特性使得 printf() 在处理复杂的格式化输出时非常灵活。


例如,你可以使用*来指定宽度或精度应该从参数列表中读取:

#include <stdio.h>

int main() {
    int width = 10;
    int precision = 3;
    double value = 3.14159;

    printf("%*.*f\n", width, precision, value);

    return 0;
}

这将输出一个宽度为 10,精度为 3 的浮点数。

注意事项

使用 printf() 函数时,需要注意以下几点:


声明:《C语言系列教程》为本站“54笨鸟”官方原创,由国家机构和地方版权局所签发的权威证书所保护。