c语言%hx输出大写,C语言输出函数printf

printf详解及进阶用法

printf输入函数详细用法

基础用法,格式控制

进阶用法

部分用法示例

printf输入函数详细用法

本文仅供个人学习使用,原文http://c.biancheng.net/view/1793.html。

基础用法,格式控制

格式控制符

作用

%c

输出一个单一的字符

%hd、%d、%ld

以十进制、有符号的形式输出 short、int、long 类型的整数

%hu、%u、%lu

以十进制、无符号的形式输出 short、int、long 类型的整数

%ho、%o、%lo

以八进制、不带前缀、无符号的形式输出 short、int、long 类型的整数

%#ho、%#o、%#lo

以八进制、带前缀、无符号的形式输出 short、int、long 类型的整数

%hx、%x、%lx、%hX、%X、%lX

以十六进制、不带前缀、无符号的形式输出 short、int、long 类型的整数。如果 x 小写,那么输出的十六进制数字也小写;如果 X 大写,那么输出的十六进制数字也大写。

%#hx、%#x、%#lx、%#hX、%#X、%#lX

以十六进制、带前缀、无符号的形式输出 short、int、long 类型的整数。如果 x 小写,那么输出的十六进制数字和前缀都小写;如果 X 大写,那么输出的十六进制数字和前缀都大写。

%f、%lf

以十进制的形式输出 float、double 类型的小数

%e、%le 、%E、%lE

以指数的形式输出 float、double 类型的小数。如果 e 小写,那么输出结果中的 e 也小写;如果 E 大写,那么输出结果中的 E 也大写。

%g、%lg、%G、%lG

以十进制和指数中较短的形式输出 float、double 类型的小数,并且小数部分的最后不会添加多余的 0。如果 g 小写,那么当以指数形式输出时 e 也小写;如果 G 大写,那么当以指数形式输出时 E 也大写。

%s

输出一个字符串

进阶用法

printf格式控制符完整格式:

%[flag][width][.precision]type

(1)type如上所述;

(2)flag:标志字符,详情见下表:

flag

作用

-

-表示左对齐。如果没有,就按照默认的对齐方式,默认一般为右对齐。

+

用于整数或者小数,表示输出符号(正负号)。如果没有,那么只有负数才会输出符号。

空格

用于整数或者小数,输出值为正时冠以空格,为负时冠以负号。

#

1)对于八进制(%o)和十六进制(%x / %X)整数,# 表示在输出时添加前缀;八进制的前缀是 0,十六进制的前缀是 0x / 0X。对于小数(%f / %e / %g)2)# 表示强迫输出小数点。如果没有小数部分,默认是不输出小数点的,加上 # 以后,即使没有小数部分也会带上小数点。

(3)width表示宽度;

(4) .precision 表示输出精度,也就是小数的位数。

①当小数部分的位数大于 precision 时,会按照四舍五入的原则丢掉多余的数字;

②当小数部分的位数小于 precision 时,会在后面补 0。

此外,亦可用与字符串和整数:

①用于字符串时,.precision 表示最大输出宽度,或者说截取字符串。当字符串的长度大于 precision 时,会截掉多余的字符;当字符串的长度小于 precision 时,.precision 就不再起作用。

②用于整数时,.precision 表示最小输出宽度。与 width 不同的是,整数的宽度不足时会在左边补 0,而不是补空格。

部分用法示例

代码如下:

#include int main() {

int a = 10, b = 20, c = 30;

printf("%5d,%5d,%5d\n",a,b,c);

printf("%.5d,%.5d,%.5d\n", a, b, c);

printf("%-5d,%-5d,%-5d\n\n", a, b, c);

int d = 10;

printf("%d,%+d\n",d,d);

printf("% d\n\n",d);

double e = 5.6789;

printf("%.2lf\n",e);

printf("%.10lf\n", e);

printf("%.0lf\n", e);

printf("%#.0lf\n\n", e);

char f[10] = "abcdefghi";

printf("%.3s,%.7s\n", f, f);

return 0;

}

输出结果如下图:

ca88b0a362a86cf62fa66c7dfcdadaab.png

  • 3
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值