算法竞赛入门经典 习题2-5 分数化小数(decimal)
程序员文章站
2022-03-14 19:30:32
...
分数化小数(decimal)
输入正整数a,b,c,输出a/b的小数形式,精确到小数点后c位。a,b≤106,c≤100。
输 入包含多组数据,结束标记为a=b=c=0。
样例输入:
1 6 4
0 0 0
样例输出:
Case 1: 0.1667
#include <stdio.h>
#include <math.h>
int main ()
{
int a, b, c, cnt = 0;
while(scanf("%d%d%d", &a, &b, &c) != EOF)
{
if(a == 0 && b == 0 && c == 0)
break;
else
{
int i = floor((double)a/b);
printf("Case %d:%d.", ++cnt, i);
int j = a-i*b;
for(int k = 1; k < c; k++)
{
i = floor(j*10/b);
j = j*10-i*b;
printf("%d", i);
}
i = floor((double)j*10/b + 0.5);
printf("%d", i);
printf("\n");
}
}
return 0;
}
上一篇: 【算法竞赛入门经典第二版】习题2-3
下一篇: 已经被群主踢出本群