C语言printf函数详解及经典例题275


C语言中的printf函数是格式化输出函数,它可以将各种类型的数据按照指定的格式输出到标准输出设备(通常是控制台)。掌握printf函数是学习C语言编程的基础,本文将详细讲解printf函数的用法,并通过一系列例题进行深入阐述。

一、printf函数的基本语法

printf函数的语法格式如下:int printf(const char *format, ...);

其中:
format: 一个字符串,包含了格式说明符和普通字符。格式说明符以%开头,后面跟一个或多个字符,用于指定输出数据的格式。
...: 可变参数列表,表示可以向printf函数传入多个参数,这些参数将根据format字符串中的格式说明符进行格式化输出。

printf函数的返回值是成功输出的字符个数,如果发生错误则返回负值。

二、格式说明符

格式说明符是printf函数的核心,它决定了输出数据的格式。常见的格式说明符如下:

格式说明符
含义
示例


%c
输出单个字符
printf("%c", 'A'); // 输出 A


%s
输出字符串
printf("%s", "Hello, world!"); // 输出 Hello, world!


%d 或 %i
输出十进制整数
printf("%d", 123); // 输出 123


%u
输出无符号十进制整数
printf("%u", 4294967295); // 输出 4294967295


%o
输出八进制整数
printf("%o", 10); // 输出 12


%x 或 %X
输出十六进制整数 (小写x为小写字母,大写X为大写字母)
printf("%x", 10); // 输出 a
printf("%X", 10); // 输出 A


%f
输出浮点数
printf("%f", 3.14159); // 输出 3.141590


%e 或 %E
输出科学计数法表示的浮点数 (小写e为小写字母,大写E为大写字母)
printf("%e", 3.14159); // 输出 3.141590e+00


%g 或 %G
输出浮点数,自动选择合适的表示方式 (%f 或 %e)
printf("%g", 3.14159); // 输出 3.14159
printf("%g", 314159000000000.0); // 输出 3.14159e+14


%%
输出百分号%
printf("%%"); // 输出 %


三、格式控制符

除了基本的格式说明符外,还可以使用格式控制符来更精细地控制输出格式。例如:
宽度: 指定输出字段的最小宽度。例如printf("%10d", 123); 输出123,前面有7个空格。
精度: 指定浮点数的小数位数或字符串的最大长度。例如printf("%.2f", 3.14159); 输出3.14。
对齐方式: 使用-左对齐,默认右对齐。例如printf("%-10d", 123); 输出123,后面有7个空格。
标志符: 例如+显示正号,0用0填充。

例如:printf("%+010.2f", 3.14159); 输出+000003.14

四、例题

例题1:输出个人信息#include
int main() {
char name[] = "张三";
int age = 20;
float height = 1.75;
printf("姓名:%s年龄:%d身高:%.2f", name, age, height);
return 0;
}

例题2:输出格式化的表格#include
int main() {
printf("%-10s %-10s %-10s", "姓名", "年龄", "身高");
printf("%-10s %-10d %-10.2f", "张三", 20, 1.75);
printf("%-10s %-10d %-10.2f", "李四", 22, 1.80);
return 0;
}

例题3:输出十六进制数#include
int main() {
int num = 255;
printf("十进制: %d", num);
printf("十六进制(小写): %x", num);
printf("十六进制(大写): %X", num);
printf("八进制: %o", num);
return 0;
}


例题4:使用宽度和精度控制输出#include
int main() {
float pi = 3.1415926;
printf("pi的值为:%10.4f", pi); //输出宽度10,精度4
printf("pi的值为:%-10.4f", pi); //输出宽度10,精度4,左对齐
int num = 12;
printf("num的值为:%05d", num); //输出宽度5,用0填充
return 0;
}


通过以上例题,相信读者对printf函数的用法有了更深入的理解。 在实际编程中,熟练掌握printf函数的各种格式说明符和格式控制符,可以有效地提高代码的可读性和可维护性。

五、总结

本文详细介绍了C语言中printf函数的用法,包括基本语法、格式说明符、格式控制符以及一些经典例题。 希望本文能够帮助读者更好地理解和应用printf函数,为后续的C语言学习打下坚实的基础。 建议读者多进行练习,尝试不同的格式控制组合,加深对printf函数的掌握。

2025-05-19


上一篇:C语言实现99乘法表:多种方法详解及性能分析

下一篇:C语言函数对齐详解:提升性能与代码可读性的技巧