1 回答
已采纳
宾丶高
TA贡献35条经验 获得超18个赞
printf()函数中的*修饰符:
假定你不想事先指定打印字段的宽度,而是希望由程序来指定该值,那么你可以再字段宽度部分使用*代替数字来达到目的。
例如: int a=2;
printf("%*d", 4, a);
打印a这个整型数时,以四位数的形式打印出来。那么结果就容易理解了。
打印结果: 0002
如果打印的数值为浮点型,那么也可以自己来定这个小数位数
例如: float a=1.5;
printf("%*.*f", 5, 3, a);
打印a这个浮点数时,前面有一个空格,要保证数字最右边是第五个位置,小数部分保留3位。如果%5.3d类似的不是浮点数的话,点后面的数字代表总共保留的数字位数。
打印结果: _1.500
scanf()函数中的*修饰符:
在scanf()中*修饰符截然不同,当把它放在%和说明字符之间时,它使函数跳过相应的输入项目。
例如: int a;
scanf("%*d, %*d, %d", &a);
printf("a = %d", a);
输入: 1 2 3
打印结果: a = 3
ps:我百度的结果,感觉这种用法不常见啊,至少你不说的话我是还没遇到过[笑哭]
- 1 回答
- 0 关注
- 1199 浏览
添加回答
举报
0/150
提交
取消