意思是第3位之后的数都舍弃吗? 可以这样, #include <stdio.h> int main() { double d1 = 1234.567; double d2 = d1 - ( int )d1; // 求出小数部分 int i = d2 * 1000; // 取出小数后3位 if (i%10 >=5 ) { i -= i%10; i += 10; // 四舍五入 } d1 = ( int )d1 + ( double )i / 1000; printf ( "d1 = %lf \n" , d1); return 0; } |
|