有理数加法
#include<stdio.h>
int main(void)
{
int a1,b1,a2,b2,i,m,n;
scanf("%d/%d",&a1,&b1);
scanf("%d/%d",&a2,&b2);
m=b1*b2;//通分
n=a1*b2+a2*b1;
if(n%m==0)//n%m而不是m%n,判断是不是整数
printf("%d",n/m);//如果是整数的话分子一定大于等于分母,所以是分子除分母
else
{
for(i=2;i<=m&&i<=n;i++)//从2开始进行约分
{
if(m%i==0&&n%i==0)
{
m=m/i;
n=n/i;
i--;//判断是否能被再次整除
}
}
printf("%d/%d",n,m);
}
return 0;
}