永发信息网

C++中怎么控制小数的位数

答案:2  悬赏:20  手机版
解决时间 2021-03-21 20:41
  • 提问者网友:太高姿态
  • 2021-03-20 23:57
C++中怎么控制小数的位数
最佳答案
  • 五星知识达人网友:轮獄道
  • 2021-03-21 01:20
#include<iostream>
#include"math.h"
#include<iomanip>
usingnamespacestd;
intmain(){
intm;
doublen,sum=0;
//intqiuhe(inti,intn);
cin>>n>>m;
//a=n;
for(inti=0;i<m;i++){
sum+=n;
n=sqrt(n);
}
cout<<fixed<<setprecision(2)<<sum;//控制小du数点后zhi两位输出dao
return0;
}



扩展资料回
C++控制小数点后的精度答
#include"stdafx.h"

#include<iostream>

#include<iomanip>

usingnamespacestd;



intmain()

{

floatvalue=324.79213;

cout<<setprecision(4)<<value<<endl;

cout<<fixed<<setprecision(4)<<value<<endl;

getchar();

getchar();

return0;

}
全部回答
  • 1楼网友:煞尾
  • 2021-03-21 02:47
如果要在程序中对一个浮点数变量进行四舍五入到小数点后d位,可以这么写: #include <cmath> template<typename real> inline real round(const real &n,const size_t &d) {    return (long long)((long double)n*pow(10,d))/pow(10,d); }如果要输出一个精确到小数点后d位的浮点数,可以这么写: #include <cstdio> int main() {    //...    float x; printf("%.3f\n",x);    //输出float类型的变量x四舍五入到小数点后3位的值    double y; printf("%.4lf\n",y);    //输出double类型的变量y四舍五入到小数点后4位的值    long double z; printf("%.5Lf\n",z);    //输出long double类型的变量z四舍五入到小数点后5位的值    //另外注意,32位windows平台对long double的stdio不是很支持    return 0; }或者: #include <iomanip> #include <iostream> int main() {    //...    float x; double y; long double z;    std::cout<<setiosflags(ios::fixed)<<setprecision(3)<<x<<endl;    //输出float类型的变量x四舍五入到小数点后3位的值    std::cout<<setiosflags(ios::fixed)<<setprecision(4)<<y<<endl;    //输出double类型的变量y四舍五入到小数点后4位的值    std::cout<<setiosflags(ios::fixed)<<setprecision(5)<<z<<endl;    //输出long double类型的变量z四舍五入到小数点后5位的值    //可以看到,namespace std下的iostream的兼容性十分优越    return 0; }
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯