如何限制小数点后printf显示的位数?

我写了一个小程序,使用scanf读取两个整数,然后执行各种算术运算。 我正在使用printf来显示结果。 如何使printf仅在小数点后显示两位数? 从简化的代码示例开始:

 #include  int main(void) { double third = 1.0 / 3.0; // display data printf("\n%20s%20s", "Description", "Data"); printf("\n%20s%20s", "-----------", "----"); printf("\n%20s%20lf", "One third", third); printf("\n"); return 0; } 

这将打印“0.333333”作为third值。 我如何改变以上输出以获得以下输出?

         描述数据
          ----------- ----
           三分之一0.33

在你想要的地方使用“%。2f”。

例如,修改以下语句

 printf("\n%20s%20lf", "Fraction", quotientdecimal); 

进入这一个:

 printf("\n%20s%.2f", "Fraction", quotientdecimal); 

将仅显示变量quotlentdecimal的两个分数。