看我今天一定要把这个题做出来,虽然说这个题很简单
问题 : 最大公约数和最小公倍数系列
有一系列正整数,求它们的最大公约数和最小公倍数,原始正整数和最终结果都在32位正整数范围内
到这里为什么max1函数和min1函数是无法正常运行的,return是无法返回零值的。??????
#include<stdio.h>
int max1(int *x,int y);
int min1(int *x,int y);
int min(int x,int y);
int max(int x,int y);
int main(){
int a[3]={2,4,6};
int *p=a;
int b;
b=min1(p,3);
printf("%d",b);
return 0;
}
int max(int x,int y){
int c;
if(x>y){
while(1){
c=x%y;
x=y;
y=c;
if(c0)
break;
}
return y;}
else while(1){
c=y%x;
y=x;
x=c;
if(c0){
break;
}
return x;
}
}
int min(int x,int y){
return xy/max(x,y);
}
//int max1(int x,int y){
//int temp;
//temp=max(x,(x+1));
//printf("");
//for(int i=2;i<y;i++){
// temp=max(temp,(x+i));
//}
//return temp;
//}
int min1(int x,int y){
int remp;
remp=min(x,(x+1));//进行不了的感觉。
printf("***");
for(int i=2;i<y;i++){
remp=min(remp,(x+i));
}
return remp;
}