文章目录
序言
- X 数据输出格式
 - m 最小字段宽度 👉最小字段宽度
 - p 精度 👉精度
 
数据输出格式
| X | 例子 | 说明 | 
|---|---|---|
| d | %d | 打印int型,m默认1 | 
| f | %f | 打印float型,小数点后默认6位 | 
| e | %e | 以科学计数法的形式打印,小数点后默认6位 | 
| g | %g | 以科学计数法或者float型打印,方式看g的大小选择 | 
e
#include <stdio.h>
int main()
{
	float a = 1001.0f;
	printf("%e\n", a);
	return 0;
}
 

g
#include <stdio.h>
int main()
{
	float a = 1001.0f;
	printf("a == %g\n", a); 
	float b = 1000000.132f;
	printf("b == %g\n", b);
	return 0;
}
 

最小字段宽度
这个代码是指我们 为a 分配10个字宽,要是a的数据长度不够10个,用空格填充
- + 表示数据在后
 - - 表示数据在前
 
#include <stdio.h>
int main()
{
	int a = 11;
	printf("%10d\n", a); // + 号省略
	printf("%-10d\n", a);
	return 0;
}
 

或许有人可能会疑惑,当我们数值的长度大于 m 的值会发生什么,其实从m的名字就可以知道了,m是最小字段宽度,但我们给的数据的长度大于m,会打印出数值的值
#include <stdio.h>
int main()
{
	int a = 11111111;
	printf("%5d\n", a);
	return 0;
}
 

精度
- %.2f 表示 小数点保留2位
 - %4.2f 表示最小字段是4,小数点后保留2位
 
#include <stdio.h>
int main()
{
	float a = 1.0f;
	printf("%15.2f\n", a);
	return 0;
}
 











