|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- #include<stdio.h>
- #include<math.h>
- int ff ( int n , int m )
- {
- int i , j , y=0;
- for( i = n ; i > 0 ; i--)
- if(n%i==0&&m%i==0) break;
-
- for( j = m ; j > 0 ; j++ )
- if(j%m==0&&j%n==0){y=j; break; }
-
- printf("最大公约数为%d,最小公倍数为%d ",i,y);
- }
- int main()
- {
- int n , m , t=0 ;
- printf("输出两个自然数:");
- scanf("%d%d",&n,&m);
-
- if(n>m)
- {t=n;n=m;m=t;}
- printf("%d",ff(n,m));
-
- }
复制代码
为什么结果是这样呀
- 输出两个自然数:4 6
- 最大公约数为2,最小公倍数为12 31
复制代码
- #include<stdio.h>
- #include<math.h>
- void ff ( int n , int m )
- {
- int i , j , y = 0;
- for( i = n ; i > 0 ; i--)
- if (n % i == 0 && m % i == 0) break;
- for ( j = m ; j > 0 ; j++ )
- if (j % m == 0 && j % n == 0) {
- y = j;
- break;
- }
- printf("最大公约数为: %d 最小公倍数为: %d", i, y);
- }
- int main()
- {
- int n , m , temp = 0 ;
- printf("输出两个自然数:");
- scanf("%d%d", &n, &m);
-
- if (n > m) {
- // 交换 n 和 m 的值
- temp = n; n = m; m = temp;
- }
- ff(n, m);
- return 0;
- }
复制代码
|
|