有关在C程序中显示十进制值的问题
数据类型’float’显示十进制数字。 默认情况下,我的编译器最多显示6位小数。 我想只看到两位小数。 例如,当编译器执行操作“c = 2/3”时,它显示“0.666666667”。 我想在输出屏幕中只看到“0.67”。 那么我应该在C程序中进行哪些必要的更改?
使用printf
输出数字时,可以使用格式说明符将其限制为2位小数。
int main() { double d = 2.0 / 3.0; printf("%.2f\n",d); return 0; }
这是输出:
---------- Capture Output ---------- > "c:\windows\system32\cmd.exe" /cc:\temp\temp.exe 0.67 > Terminated with exit code 0.
您没有告诉我们您是如何显示该值的,因此我猜您使用的是printf("%f", x)
。 您可以在“f”前面加上精度规格,这是一个点后跟一个数字,例如printf("%.2f", x)
。
小数的printf格式为%。 然后是显示的小数精度,后跟“f”。
所以显示两个十进制数是
printf("%.2f", i);
并显示六位小数
printf("%.6f", i);