C语言:输入两个分数,计算它们的和.用a/b+c/d=x/y的形式.源程序
网友回答
#include
//求最大公约数方法
int maxCD(int m,int n)
{int tem;
if(m {tem = m;
m = n;n = tem;
}while(m % n != 0)
{tem = m % n;
m = n;n = tem;
}return n;
}void main()
{int a,b,c,d;
printf(请输入a,b,c,\n);
scanf(%d%d%d%d,&a,&b,&c,&d);
int x = a * d + b * c;
int y = b * d;
if(x == 0)
printf(%d/%d+%d/%d=%d\n,a,b,c,d,0);
else{//化简int cd = maxCD(x,y);
x /= cd;
y /= cd;
if(y != 1)
printf(%d/%d+%d/%d=%d/%d\n,a,b,c,d,x,y);
elseprintf(%d/%d+%d/%d=%d\n,a,b,c,d,x);
}}