A. C語言編程:輸入三個正整數,求其最大公約數和最小公倍數。
C語言編程中,輸族指入三個正整數,求其最大公約數和最小公倍數的一種方法是:
定義一個函數,用輾轉相除法求兩個正整數的最大公約數。
定義另一個函數,用兩個正整數的乘積除以它們的最大公約數得到最小公倍數。
在主函數中,從鍵盤輸入三個正整數 a、b、c,並調用上述兩個函數分別求出 a 和 b 的最大公約數和最小公倍數。
再用 a 和 b 的最小公倍數與 c 求出三個正整數的最小公倍數,並用 a 和 b 的最大公約數與 c 求出三個正整數的最大公約數。
//求兩個正整數的最大公約數int gcd(int x, int y){ int r; while(y > 0)
{
r = x % y;
x = y;
y = r;
} return x;
}//求兩個正整數的最小公倍數int lcm(int x, int y){ return x * y / gcd(x, y);
}//主函數#include <stdio.h>int main(){ int a, b, c; //輸入的三個正整數
int g1, g2; //最大公約數
int l1, l2; //最小公倍數
printf("請輸入三個正整數: "); scanf("%d%d%d", &a, &b, &c);
g1 = gcd(a, b); //求a和b的最大公約數
l1 = lcm(a, b); //求羨雀a和b的最小公倍數
g2 = gcd(g1, c); //求三個正整數的最大公約數
l2 = lcm(l1, c); //求三個正整數的最小公倍數
printf("三個正整數的最大兄穗早公約數是:%d ", g2); printf("三個正整數的最小公倍數是:%d ", l2); return 0;
}
B. 用C語言計算三個數的最大公約數
用C語言計算三個數的最大公約數的方法如下:
准備材料:Visual Studio 2019、電腦
1、首先打開Visual Studio,新建一個Win32控制台程序,
C. 三個數的最大公約數演算法,C語言的
第一種方法:
x,y,z三個數,先找出最小的,比如x;
再啟歲殲i=x;while(x%i!=0||y%i!=0||z%i!=0)
{i--;}
最後求出的i,就是了。
第二種方法悄沖:
定義子函數int
PubShu(int
m,int
n){int
r;while(n!=0)
{r=m%n;m=n;n=r;}}
其中m>n;
先x,y調用子函數求出
最大公約數
a;
在a,z調用子函數求出
最大公約數
b;即可。這樣可以么雀洞
D. 怎樣用「C語言」計算三個數的最大公約數
借掘伍用函數調用的方法來求,禪卜先求兩個,再求最後的三個。
#include<賀散穗stdio.h>
int fun(int,int);
int main()
{
int a,b,c;
scanf("%d%d%d",&a,&b,&c);
printf("%d\n",fun(c,fun(a,b)));
return 0;
}
int fun(int a,int b)
{
int r;
do
{
r=a%b;
a=b;
b=r;
}while(r!=0);
return a;
}
E. 如何用C語言求三個數的最大公約數和最小公倍數
#include <stdio.h>
int main ()
{int p,r,n,m,temp;
printf("please enter two positive integer numbers n,m:");
scanf("%d %d",&n,&m);
if (n<m)
{temp=n;
n=m;
m=temp; //把大數放在n中, 小數放在m中
}
p=n*m; //先將n和m的乘積保存在睜備p中, 以便求最小公倍數時用
while (m!=0) //求n和m的最大公約數
{r=n%m;
n=m;
m=r;
}
printf("HCF=%d\n",n);
printf("LCD=%d\n"則塌,p/n); /悉盯毀/ p是原來兩個整數的乘積
return 0;
}