欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

分数化小数(decimal)

程序员文章站 2024-03-18 23:34:28
...

输入正整数a, b, c,输出a/b的小数形式,精确到小数点后c位。a, b <= 10^6,c <= 100。例如a=1, b=6, c=4时应输出0.1667。

本题注意格式化输出(printf)的特殊用法。
如printf(“%*.*lf\n”, 8, 4, (double)10/3); 会输出8个字宽保留4位小数的浮点数运算结果。
详见: http://blog.csdn.net/xiexievv/article/details/6831194 以及百度。

代码:

#include<iostream>
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include<algorithm>
using namespace std;

int main()
{
    double a,b,c;  //注意这里a,b是double型!!! 
    double k;
    while(scanf("%d%d%d",&a,&b,&c)!=EOF)
    {
        k=a/b; 
        printf("%.*lf\n", c, k);  //表示会输出保留c位小数的浮点数运算结果
    } 
    return 0;
}
//或者本代码改成int a,b,c;然后去掉k,printf那里改成printf("%.*lf\n", c,(double)a/b);