當前位置:首頁 » 編程語言 » c語言輸入3個數求其最大公約數
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言輸入3個數求其最大公約數

發布時間: 2023-05-25 10:28:08

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;
}