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表示精度,合起来就是设置精度,括号中的数字就是小数位的精度了
楼主,记得采纳啊
在C++中有一个流的概念,用cout<
楼主,记得采纳啊
全部回答
- 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位小数,但是你可以获得类似于保留多少位有效数字以后有几位小数。这个你真想要的话我再说吧...
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯