C语言 此题输出的结果如何保留两位小数
#include#includeintmain(){floata,n,p;doublel;scanf("%f%f%f",&a,&n,&p);l=a*pow(1+p,n)-...
#include
#include
int main() { float a,n,p; double l; scanf("%f%f%f",&a,&n,&p); l=a*pow(1+p,n)-a; printf("l=%lf",l); return 0; } 展开
#include
int main() { float a,n,p; double l; scanf("%f%f%f",&a,&n,&p); l=a*pow(1+p,n)-a; printf("l=%lf",l); return 0; } 展开
1个回答
展开全部
可以在输出的时候限制小数点位数。
1、当输出单精度浮点型float变量f时,可以用printf("%.2f", f)来使输出结果保留两位有效数字。
2、如果是双精度浮点数double,就需要用%.2lf来使输出结果保留2位小数。
下面讨论浮点型的两种类型。
1 .单精度浮点型(float)
单精度浮点型(float )专指占用32位存储空间的单精度(single-precision )值。单精度在一些处理器上比双精度更快而且只占用双精度一半的空间,但是当值很大或很小的时候,它将变得不精确。
2 .双精度型浮点型(double)
双精度型,正如它的关键字"double "表示的,占用64位的存储空间。在一些现代的被优化用来进行高速数学计算的处理器上双精度型实际上比单精度的快。
所有超出人类经验的数学函数,如sin( ),cos( ) ,tan()和sqrt( )均返回双精度的值。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询