永发信息网

c++新手求帮助,c++如何显示任意一数字的位数,像14876.456会显示5位数和3位小数

答案:3  悬赏:80  手机版
解决时间 2021-01-28 20:22
  • 提问者网友:酱爆肉
  • 2021-01-28 08:32
c++新手求帮助,c++如何显示任意一数字的位数,像14876.456会显示5位数和3位小数
最佳答案
  • 五星知识达人网友:一把行者刀
  • 2021-01-28 09:45
C语言中用 printf("%.2f",123.23);显示两位小数,C++是完全包含C的,可以这样使用
在C++中有一个流的概念,用cout< 其中setiosflags中set是设置的意思,ios是iostream的缩写,即输入输出流,flags是标志的意思,fixed是固定的,所以setiosflags(ios::fixed)就是设置输入输出数据小数位,后面的setprecision中也是一样的,set表示设置,precision表示精度,合起来就是设置精度,括号中的数字就是小数位的精度了

楼主,记得采纳啊
全部回答
  • 1楼网友:毛毛
  • 2021-01-28 10:35
换个思路,先把数字转换成字符串,然后搜'.'。。。。 参考下面演示代码(确定是c++?): #include  #include  #include  using namespace std; int main(int argc, char const *argv[]) {     double d = 14876.456;     string str;     stringstream ss;     ss << d;     ss >> str;     size_t found = str.find('.');     if (found == string::npos) return -1;     cout << found << " " << str.size()-found+1 << endl;     return 0; }运行: 5 3
  • 2楼网友:春色三分
  • 2021-01-28 10:17
5位整数只要floor(log10(14867.456))就可以得到 3位小数这里有个问题就是0.456实际保存的时候压根就不是3位小数,但是你可以获得类似于保留多少位有效数字以后有几位小数。这个你真想要的话我再说吧...
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯