可以这样,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",...
输出语句可以这样写: printf("%.3f\n",a); 假设a是你要输出的变量。其中".3f"就是指限定输出3位小数,并且C语言会自动进行末位的四舍五入。
声明变量x为double型(浮点双精度)或float(浮点单精度)。调用输入函数scanf("%lf",&x);或scanf("%f",&x);——其中%lf表示x是double型、%f表示float型。调用printf("%.5f\n",x);输出——其中.5表示小数点后保留5位小数。
-a.bf——将一个十进制浮点数占宽a列、小数部分保留b位、左对齐输出,右侧补0;当被输出的浮点数的实际位数大于a时按实际位数输出。