上一篇文章聊了输入函数,这次聊一聊输出函数printf();
printf()与scanf()一样都属于标准库函数,使用之前必须要有编译预处理指令(在编译之前进行的处理)
printf()格式字符: %d 输出十进制有符号int型 %u输出十进制无符号int型 %f以小数形式(6位小数)输出float,double型 %e 以标准指数形式输出float,double型 格式修饰符: (1): l,h %ld,%lu输出long型 %hd,%hu输出short型 (2):m 数据占用的最小域宽,加在%和数据类型之间 数据位宽小于m时,右对齐,左补空格 -m 左对齐,右补空格 (3): 显示精度 .n 对浮点数表示输出n位小数 加上域宽,一般格式%m.nf 举个例子: #include <stdio.h> int main() { float a=3.14; printf("%6.3f\n",a); return 0; 运行结果: 3.140 Program ended with exit code: 0 .3表示以三位小数输出(默认输出6位小数),会发现3前面多出一个空格,这是因为我们想要输出的3.140的域宽为5(注意.也占一个宽度),小于我们想要的域宽6,所以,左补一个空格,换成-6就是右补空格。 还有,printf()的输出格式较为灵活: #include <stdio.h> int main() { int a=3,b=5; printf("%d+%d=%d\n",a,b,a+b); return 0; } 这样就可以直接输出: 3+5=8 Program ended with exit code: 0 再提一点,如果想要输出%, int a =10; printf("%d%%",a); 可以输出10% 即连续两个百分号输出百分号 相比于scanf(),printf()还是比较容易理解的,输入,输出函数还有getchar(),putchar(),这些都比较容易理解,也没有那么灵活,在这里就不介绍了。