#include<stdio.h>
#include<stdlib.h>
int gcd(int a,int b)
{
a=0,b=0;
int Max=0,Min=0;
a=abs(a),b=abs(b);
if(a>=b){
Max=a;
Min=b;
}else{
Max=b;
Min=a;
}
while(Min!=0){
int Temp=Max%Min;
Max=Min;
Min=Temp;
}
return Max;
}
int main()
{
int m,n;
while(scanf("%d %d",&m,&n)!=EOF){
int i=0,a,b,c,d,e;
if(a<0){
a=abs(a);
i=1-i;
}
if(b<0){
b=abs(b);
i=1-i;
}
c=gcd(m,n);
d=m/c;e=n/c;
int f,g;
f=d%e;
g=d/e;
if(f==0&&g!=0){
if(i==0)
printf("%d",g);
else
printf("%d",-g);
}else if(f==0&&g==0){
if(i==0)
printf("%d/%d",d,e);
else
printf("-%d/%d",d,e);
}else if(f!=0){
if(i==0)
printf("%d+%d/%d",f,g,e);
else
printf("-%d-%d/%d",f,g,e);
}
}
return 0;
}
上边这个程序到了调用gcd函数时,赋值给c时,不知道为什么c的值总是0 ╯﹏╰
望指点