当前位置:   article > 正文

printf的格式声明_printf输出对齐

printf输出对齐

1.printf的格式声明

%[标志][宽度][.精度][长度]类型

(1)标志

-:左对齐,printf输出数据默认为右对齐

+:当一个数为整数时,前面加上一个+符号,输出整数或小数的时候会显示正负号。

0:右对齐时,会用0 填充左边的空缺,默认的时候用空格填缺。

空格:输出正数的时候前面为空格,输出负数的时候前面带-符号。

#:%o和%x输出是加上八进制和十六进制的前缀。

注:printf默认输出右对齐,如果加上+,面对正数的时候会加上+,符号不受印象。

0只会在右对齐的时候起作用。

(2)用scanf读取浮点变量的时候,float使用%f,double使用%lf

printf输出浮点类型变量的时候float和double使用%f和%lf都可以

(3)宽度:用十进制数来表示输出数据的最小位数,若实际位数少于定义的宽度则补0或者空格。

注:使用的时候注意对齐方式。printf默认右对齐。

(4)精度:精度格式以字符“.”开头,后面跟上十进制整数,主要作用于浮点型数据,表示输出小数后面的尾数,如果作用于正数数据则按照一定的宽度输出数据,左侧空缺填充0。如果超出精度就会截取超出部分(四舍五入)

注:精度和宽度混用会如何??

对于整数类型混用精度和宽度,在右对齐的情况下,宽度情况下实际长度小于宽度则前面以空格填充;精度则是以0填充。

若果是左对齐的情况下,在宽度的情况下后面以空格填充,精度的情况下则还是以0填充

对于浮点数类型混用,则有些麻烦注意不要混用就好了

(5)长度:程度格式控制字符包括h和l两种,h表示按短数据类型输出。l表示按长数据类型输出。例如:%lf%hf

注:输出的数据极大超出范围的时候怎么解决?(Java中如何解决?记得处理再次做好标记防止忘记。)

对于更大的整数,c的基本数据类型就无能为力了,常用方法是利用数组进行范围扩大。如果只是输出可以用字符串(如果再有再补充)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/64802
推荐阅读
相关标签
  

闽ICP备14008679号