aaron.yang 发表于 2020-4-30 21:07:07

C++求助

题目:
输入三个数a,b,n
要求输出a/b的小数点后第n位是多少?
例子:
    输入:
    1 3 6
    输出:
    3

为什么运行下面这段代码无法满足上述要求?{:10_243:}
#include<iostream>
using namespace std;
int main()
{
        long double a,b,c,n,n_times;
        cin>>a>>b>>n;
        c=float(a)/float(b);
        c=c-int(c);
        n_times=c;
        cout<<c<<"\n";
        while(n_times<1)
        {
                n_times*=10;
        }
        cout<<int(n_times);
        return 0;
}

liuzhengyuan 发表于 2020-4-30 21:15:29

满足了呀,是不是把 0.3333 给多输出了???

ShaeZhang 发表于 2020-4-30 23:32:44

你可以查一个函数precision()
页: [1]
查看完整版本: C++求助