C语言printf函数详解及格式化输出

需积分: 10 1 下载量 11 浏览量 更新于2024-10-07 收藏 37KB DOC 举报
"C语言中的printf函数是用于格式化输出的重要函数,它允许程序员按照特定的格式将数据打印到标准输出设备,通常是屏幕。printf函数的基本调用格式是`printf("<格式化字符串>", <参量表>)`。格式化字符串包含常规字符和以`%`开始的格式规定符。参量表中的参数应与格式化字符串匹配,数量和顺序必须一致。 printf函数支持多种格式规定符,如: - `%d`:用于输出十进制有符号整数。 - `%u`:用于输出十进制无符号整数。 - `%f`:用于输出浮点数。 - `%s`:用于输出字符串。 - `%c`:用于输出单个字符。 - `%p`:用于输出指针的值。 - `%e`:以科学计数法(指数形式)输出浮点数。 - `%x`和`%X`:用于无符号十六进制整数输出。 - `%o`:用于无符号八进制整数输出。 - `%g`:根据数值大小自动选择`%e`或`%f`表示方式。 在格式规定符中可以添加数字来指定最小场宽,例如`%3d`表示至少输出三位的整数,不足的部分右对齐。对于浮点数,`%9.2f`表示总场宽为9,其中2位是小数,其余是整数,小数点占一位,不足的位数右对齐。如果数值的实际长度超过指定场宽,整数部分会按实际长度输出,而浮点数的小数部分会按指定宽度四舍五入。 此外,还可以使用符号`-`使输出左对齐,`+`在正数前加正号,`0`在不足最小场宽时用0填充,以及`#`在十六进制输出时添加前缀`0x`或`0X`。 例如: ```c printf("%d %u %.2f %s\n", 123, 456U, 3.14159, "Hello, World!"); ``` 这段代码会输出: ``` 123 456 3.14 Hello, World! ``` printf函数的强大之处在于其灵活性,可以适应各种输出需求,包括精度控制、对齐方式以及各种数据类型的转换。熟练掌握printf函数的使用是C语言编程的基础技能之一。