如下
  • 板块灌水区
  • 楼主魑魅魍魉唬
  • 当前回复4
  • 已保存回复4
  • 发布时间2024/2/28 16:52
  • 上次更新2024/2/28 20:05:21
查看原帖
如下
317218
魑魅魍魉唬楼主2024/2/28 16:52

构造一个分数结构体,包括分子和分母,主函数要求用此结构体实现分数相加 并化简,在屏幕上显示结果。 求助大佬,我这个为啥问题呀,1/6 + 1/3结果是2/2,应该是1/2才对,但是不知道哪里不对,求调

#include<bits/stdc++.h>
using namespace std;
struct fenshu{
	int zi,mu;
};
int gfactor(int a,int b){
	while(b!=0){
		int c;
		c=a%b;
		a=b;
		b=c;}
	return a;
}
int main(){
	struct fenshu f[2],final;
	for(int i=0;i<2;i++){
		cin>>f[i].zi>>f[i].mu;
	}
	final.zi=f[0].zi*f[1].mu+f[1].zi*f[0].mu;
	final.mu=f[0].mu*f[1].mu;
	int g=gfactor(final.zi,final.mu);
	final.zi=final.zi/g;
	final.mu=final.mu/g;
	cout<<final.mu<<"/"<<final.mu<<endl;
	return 0;
}
2024/2/28 16:52
加载中...