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