C语言实现分数的四则运算

用C语言实现分数的四则运算

#include<stdio.h>
int main()
{
int a,b,d,e,f,g,m,n;
f=0,g=0;
char op;
scanf("%d/%d %c %d/%d",&a,&b,&op,&d,&e);
switch(op)
{
case’+’:f=ae+bd,g=be; break;
case’-’:f=a
e-bd,g=be; break;
case’’:f=ad,g=be; break;
case’/’:if(b)f=a
e,g=d*b;
else {printf(“除数不能为!0\n”);return 0;}
}
m=f,n=g;
int gcd(int m,int n) //辗转相除法求最大公约数
{
if(n= =0) //没有空格
return m;
else
return gcd(n,m%n);
}
f=f/gcd(m,n);
g=g/gcd(m,n); //进行化简
if(f= =0||g= =1) //考虑特殊情况
printf("%d/%d %c %d/%d = %d\n",a,b,op,d,e,f);
else
{
if(g<0)
{ f=-f,g=-g; }
printf("%d/%d %c %d/%d = %d/%d\n",a,b,op,d,e,f,g);
}
return 0;
}

相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页