大家好,又见面了,我是全栈君。
<pre name="code" class="cpp">/* *coyright(c)2014 龙城无泪 *All rights reserved *文件名 digui.c *作者:封尘之魂 *完毕日期:20141108 *版本V1.0 *问题描写叙述:求两个整数的最大公约数最小公倍数 *输入描写叙述:输入两个整数 *输出描写叙述:成功输出最大公约数最小公倍数 */ #include<stdio.h> int main() {int m,n,q,t,j,k; scanf("%d%d",&m,&n); j=m;k=n;if(m<n)//比較大小 {t=m; m=n; n=t; } q=m%n; while(q)//辗转相除法 {m=n; n=q; q=m%n; } printf("%d %d",n,j*k/n); }
另外一种循环
#include<stdio.h> int z(int a, int b) { return b==0?a:z(b, a%b);//递归推断}int main(){int a,b,m;scanf("%d%d",&a,&b);m=z(a,b);printf("%d %d", m,a*b/m);}
心得:一般来说用循环解决的问题都能用递归解决 要多运用递归来解决循环的问题来锻炼自己的思维问题
方法:取代 要熟练的掌握替换之法 把没用过量赋值给用过的量,实现自己想要达到的目标
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/116234.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...