m.nf%,就是总共m位,小数点后占n位,7.3f%,也就是总共占7位,位数不足的时候右会用空格补足,超过的时候就会被截断,比如123456.12345,就会得到123456.123,因为这个数整数部分就有6位了,而你的要求是小数点后要留3位,则剩下的整数部分只有4位,程序不会把整数部分截断,所以就会把整数部分全部输出,在小数部分保留3位。 这个肯定运行不能下去,首先你的这个程序输出一定是不知道的一个值,而不是一串数据,5.3f就是这个程序输出的是字符型,数字是保留的位数!