printf函数输出格式

2011年12月19日 分类:学习笔记C++

格式: %[标志][输出最小宽度][.精度][长度]类型

类型:

表示输出类型的格式字符格式字符意义
a浮点数、十六进制数字和p-计数法(C99)
A浮点数、十六进制数字和p-计数法(C99)
c输出单个字符
d以十进制形式输出带符号整数(正数不输出符号)
e以指数形式输出单、双精度实数
E以指数形式输出单、双精度实数
f以小数形式输出单、双精度实数
g以%f%e中较短的输出宽度输出单、双精度实数,%e格式在指数小于-4或者大于等于精度时使用
G以%f%e中较短的输出宽度输出单、双精度实数,%e格式在指数小于-4或者大于等于精度时使用
i有符号十进制整数(与%d相同)
o以八进制形式输出无符号整数(不输出前缀O)
p指针
s输出字符串
x以十六进制形式输出无符号整数(不输出前缀OX)
X以十六进制形式输出无符号整数(不输出前缀OX)
u以十进制形式输出无符号整数

int main() 
{ 
  char c, s[20]; 
  int a=1234;
  float f=3.141592653589; 
  double x=0.12345678912345678; 
  strcpy(s, "Hello,World"); 
  c='\x41'; 
  printf("a=%d\n", a);//按照十进制整数格式输出,显示 a=1234

  printf("a=%d%%\n", a);//输出%号 结果 a=1234%

  printf("a=%6d\n", a);//输出6位十进制整数 左边补空格,显示 a= 1234

  printf("a=%06d\n", a);//输出6位十进制整数 左边补0,显示 a=001234

  printf("a=%2d\n", a);//a超过2位,按实际输出 a=1234

  printf("a=%-6d\n", a);///输出6位十进制整数 右边补空格,显示 a=1234

  printf("f=%f\n", f);//浮点数有效数字是7位,结果 f=3.141593

  printf("f=6.4f\n", f);//输出6列,小数点后4位,结果 f=3.1416

  printf("x=%lf\n", x);//输出长浮点数 x=0.123457

  printf("x=%18.16lf\n", x);//输出18列,小数点后16位,x=0.1234567891234567

  printf("c=%c\n", c); //输出字符 c=A

  printf("c=%x\n", c);//以十六进制输出字符的ASCII码 c=41

  printf("s[]=%s\n", s);//输出数组字符串s[]=Hello,World

  printf("s[]=%6.9s\n", s);//输出最多9个字符的字符串 s[]=Hello,Wor

  return 0;
}
作者:wuyuan 本文来自Wuyuan's Blog 转载请注明,谢谢! 文章地址: https://wuyuans.com/2011/12/printf-function-to-output-format