C语言中 printf(“%5.3f”,q)中的5.3是什么?_?是不是5输错了?

2025-04-15 09:49:37
推荐回答(3个)
回答1:

小数点前面的数字表示输出列数
数字位数大于它时,按实际位数输出,小数点前空缺也是
小数点后面的数字表示输出的小数点位数,如果位数不足就会四舍五入,如果位数不够显示就会在后面补0.

比如x=12.31913
则printf("%5.3f",x)就是“12.319”,注意小数点也算一位数长!
又如x=2.31913
则printf("%5.3f",x)就是“ 2.319”,注意小数点也算一位数长,2前面还有一个空格!

所以你上面问的5.3是指结果总长是五位数(注意小数点也算一位数长),就是小数点前两个数字,不足就用空格表示,小数点后保留两位,不足四舍五入!

回答2:

5是宽度,3是精度

回答3:

上面那位说的都是错的,说的小数点算一位,数下来都是六位了