#include <stdio.h>
#include <stdlib.h>
int main()
{
int m,n,d; //保存输入参数
int zh,yu,ct; //分别保存 m/n的整数部分,计算中的余数部分,小数位数
char *buff,*p; //小数部分字符串,指向字符串最后一个空字符的指针
scanf("%d %d %d",&m,&n,&d);
if(n == 0)
{
printf("data input error\r\n");
exit(0);
}
zh = m / n;
yu = (m % n )* 10; //取余*10
buff = (char*) malloc( d + 1 ); //申请空间
ct = 0;
p = buff;
while(ct < d)
{
*p++ = '0' + yu / n;
yu = ( yu % n ) * 10;
ct++;
*p = 0;
}
printf("%d/%d=%d.%s\r\n",m,n,zh,buff);
if(buff)
free(buff);
return 0;
}
温馨提示:内容为网友见解,仅供参考