C语言中输出时怎样控制小数点后的位数,请举例说明保留1、2、3、4位小数等等,谢谢

如题所述

控制小数位数就是通过输出格式说明符来规定的

举例说明如下:

1、float f1=3.1415926;

2、float f2=1234.1415926;

3、float f3=124.1;

4、printf("%3.4f",f1);//输出结果为:_ _ 3.1416(_表示空格)

5、printf("%3.4f",f2);//输出结果为:1234.1416

6、printf("%3.4f",f3);//输出结果为:124.1000

printf("%3.4f",f);中的3是控制f的整数部分按3位的固定位宽输出;4是按四舍五入的准则保留4位小数。

注:如果整数部分不足3位,则在前面补空格,超过3位,则按实际位数输出;如果小数部分不足4,则在后面补0。

扩展资料:

浮点类型

如果存储比精度更重要,请考虑对浮点变量使用float类型。相反,如果精度是最重要的条件,则使用double类型。

浮点变量可以提升为更大基数的类型(从float类型到double类型)。当您对浮点变量执行算术时,通常会出现提升。此算术始终以与具有最高精度的变量一样高的精度执行。例如,请考虑下列类型声明:

float f_short;double f_long;long double f_longer;f_short=f_short*f_long;

在前面的示例中,变量f_short提升到类型double并且与f_long相乘;然后,结果舍入到类型float,然后赋给f_short。

在以下示例中(使用前面示例中的声明),将以浮点(32位)精度对变量执行算术;结果随后将提升到double类型:

f_longer=f_short*f_short;

double f_long;

long double f_longer;

f_short=f_short*f_long;

在前面的示例中,变量f_short提升到类型double并且与f_long相乘;然后,结果舍入到类型float,然后赋给f_short。

在以下示例中(使用前面示例中的声明),将以浮点(32位)精度对变量执行算术;结果随后将提升到double类型:

f_longer=f_short*f_short;

参考资料:

百度百科——FLOAT(数据类型)

温馨提示:答案为网友推荐,仅供参考