c语言分数化小数

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

#include<math.h>
main()
{int a,b,c;
scanf("%d %d %d",&a,&b,&c);
printf("%.*f",c,1.0*a/b);
getch();}

不是最好的方法 a应当用float型否则值域不够大

另外c>20时无法正确输出

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-08-16
#include<stdio.h>
int main()
{
    int a = 1, b = 6, c = 4;
    char str[100];
    sprintf(str, "%s%d%s", "%.",c,"lf");//题目要求c很大,需要自己模拟除法
    printf(str, a * 1.0 / b);
    return 0;
}

本回答被网友采纳
第2个回答  2017-08-15
#include <stdio.h>

int main(void)
{
    int a = 1, b = 6, c = 4;
    printf("%.*lf\n", c, (double)a / (double)b);
    return 0;
}

第3个回答  2013-10-19

试了一下应该可以。。


相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网