卡罗尔正在学习分数除法,但是她在判断答案是否正确方面有困难。请你帮她找出正确的答案。
输入
一行包含三个正整数 A ,B 和 K :表示要输出的分子,分母和小数位数。
保证 1 < A < B <103,1 < K <103.
输出
输出一行包含小数点后 K 位的小数。
请使用四舍五入规则将最后一位小数四舍五入。
输入样例1
1 2 2
输出样例1
0.50
输入样例2
10 99 5
输出样例2
0.10101
输入样例3
656 939 10
输出样例3
0.6986155485
输出样例4
1 3 20
输入样例4
0.33333333333333333333
#include <bits/stdc++.h>
using namespace std;
#define int long long
#define ios ios::sync_with_stdio(false),cin.tie(0),cout.tie(0);
typedef pair<int,int> PII;
const int N=2e6+10;
int p[N];
signed main()
{
ios;
int a,b,c;
cin>>a>>b>>c;
int x=a,y=b;
for (int i=1;i<=c+1;i++)
{
a *=10;
p[i]=a/b;
a %=b;
}
cout<<x/y<<".";
if (p[c+1]>=5) p[c]++;
int l=c;
while (p[l]==10)
{
p[l]=0;
p[l-1]++;
l--;
}
for (int i=1;i<=c;i++) cout<<p[i];
return 0;
}
更多【编程技术-算数练习——模拟】相关视频教程:www.yxfzedu.com