テスト2:分数の追加

#include <stdio.h>
//函数嵌套
int gys(int x, int y)//最大公因数函数 
{
    
    
	return y ? gys(y, x%y) : x;
}

int gbs(int x, int y)//最小公倍数函数 
{
    
    
	return x * y / gys(x, y);
}

void yuefen(int fz, int fm)//约分函数 
{
    
    
	int s = gys(fz, fm);//约去分子和分母的最大公因数 
	fz /= s;
	fm /= s;
	printf("%d/%d\n", fz, fm);
}

void add(int a, int b, int c, int d)//分数加法函数 
{
    
    
	int u1, u2, fz1;
	u1 = gbs(b, d) / b * a;
	u2 = gbs(b, d) / d * c;
	fz1 = u1 + u2;
	yuefen (fz1, gbs(b, d));
}
int main()
{
    
    
	int a, b, c, d;
	scanf("%d%d%d%d", &a, &b, &c, &d);
	add(a, b, c, d);
	return 0;
}

おすすめ

転載: blog.csdn.net/Shao_yihao/article/details/113146952