C语言转换格式符大全

 
 
一、格式符含义
1、d格式符:按十进制格式输出。 %d         输出数字长度为变量数值的实际长度 %md        输出m位(不足补空格,大于m位时按实际长度输出) %ld,%mld l(小写字母L)表示输出“长整型”数据 %0md,%0mld 0(数字0)表示位数不足m时补0 注:%后面的m(位数控制)、0(位数不足补0)对于其他格式符也适用。     例:(□表示空格) int i=123;  long j=123456;  printf("%d□5d□05d,□ld□8ld□08ld",i,i,i,j,j,j);  输出:123□□□123□00123,□123456□□□123456□00123456  2、o(字母)格式符:按八进制格式输出。(不会出现负数格式) 3、x格式符:按十六进制格式输出。(不会出现负数格式) 4、u格式符:用于输出unsigned类型数据。 例:main()
{  unsigned int a=65535;  int b=-2;  printf("a=%d,%o,%x,%u\n",a,a,a,a);  printf("a=%d,%o,%x,%u\n",b,b,b,b);
}    输出:a=-1,177777,ffff,65535      b=-2,177776,fffe,65534 5、c格式符:以字符形式输出。 6、s格式符:以字符串格式输出。 例:printf("%s","CHINA");  %ms    m指定宽度(不足时左补空格,大于时按实际宽度输出) %-ms   左对齐,不足m时右补空格 %m.ns 输出占m个字符位置,其中字符数最多n个,左补空格 %-m.ns 同上,右补空格 7、f格式符:按实数格式输出。 %f       按实数格式输出,整数部分按实际位数输出,6位小数  %m.nf    总位数m(含小数点),其中n位小数  %-m.nf   同上,左对齐  例:main()  { float x, y;  x=111111.111; y=222222.222;  printf("%f", x+y);  
}    程序输出: 333333.328152(实数运算中误差不可避免)  例:main()  { double x,y; double x2,y2;  x=1111111111111.111111111; y=2222222222222.222222222;  x2=1111111111111.111; y2=2222222222222.222;  printf("%f %f", x+y, x2+y2);       /* 13位整数,9位小数 */   
}    程序输出: 3333333333333.333010 3333333333333.333010(相同)  注意
    从以上两例可以看出,实数运算中误差不可避免,double比float精度高。
    float实数(单精度)的有效位数是7位,double实数(双精度)的有效位数是16位,超过有效位数的输出和输入均无意义。 例:
main()  { float f=123.456;  printf("%f□□%10f□□%10.2f□□%.2f□□%-10.2f",f,f,f,f,f);  
}    输出结果:  123.455994□□123.455994□□□□□□123.46□□123.46□□123.46  8、e格式符:以指数形式输出实数。%e 输出13位,其中:1位整数,1位小数点,6位小数,5位指数(含字符e和指数的符号)  9、g格式符:根据数值大小,自动选择f或e格式输出。
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值