保留小数的问题

来源:百度知道 编辑:UC知道 时间:2024/05/31 23:11:31
请编制程序,从文件in.dat中读取200个整数至数组xx中,求出奇数的个数cnt1和偶数的个数cnt2以及数组xx值为偶数的元素值的算术平均值pj(保留2位小数)。
结果cnt1,cnt2,pj输出到out.dat中。
问一下如果将pj定义为float型,cnt为int型,是不是表达式pj/=cnt不用进行强制转换结果也是小数啊?还有保留两位小数怎样实现呢?

除数和被除数中有一个是float型的。就会强制转化成float型。但是不建议这样用。有的时候编译会提示warning。所以最好在前面加(float)pj这样就不会出警告了。这叫显式转化。
另外如果想控制小数的位数"%.Xf"X的地方写上你想保留的位数就OK了。
例如"%.2f"就是保留2位

用"%.2f"格式

用"%.2f"格式