代码如下
//myexgcd #include<stdio.h> int main() { unsigned int a,b; int u,v,gcd; int extendedgcd(unsigned int a,unsigned int b,int *x,int *y); printf("请输入a和b:"); scanf("%d%d",&a,&b); gcd=extendedgcd(a,b,&u,&t); printf("u=%d,v=%d\n",u,v); printf("最大公因子k=%d\n",gcd); return 0; } int extendedgcd(unsigned int a,unsigned int b,int *x,int *y)//扩展欧几里得算法; { if(b==0) { *x=1; *y=0; return a; } int ret=extendedgcd(b,a%b,x,y); int t=*x; *x=*y; *y=t-a/b*(*y); return ret; }