用C语言计算三个数的最大公约数的方法如下:
准备材料:Visual Studio 2019、电脑
1、首先打开Visual Studio,新建一个Win32控制台程序,
2、然后在源文件夹下面新建一个C语言文件,
3、接着在C语言文件中的顶部导入库stdio和stdlib,
4、接下来输入如下图所示的代码进行最大公约数的求解,
5、接着运行C语言程序就会弹出如下图所示的界面,
6、最后随便输入两个数字就可以得出最大公约数,注意两个数字之间要有空格。
思路:
1、如果a > b a = a - b;
2、如果b > a b = b - a;
3、假如a = b,则 a或 b是最大公约数;
4、如果a != b;则继续从一开始执行;
5、也就是说循环的判断条件为a != b,直到a = b时,循环结束。
代码如下:
#define _CRT_SECURE_NO_WARNINGS 1
#include
int main()
{
int a = 0;
int b = 0;
printf("输入两个数求最大公约数:");
scanf("%d%d",&a,&b);
while(a!=b)
{
if(a>b)
a = a - b;
if(a
b = b - a;
}
printf("%d\n",a);
return 0;
}
扩展资料:
当前阶段,在编程领域中,C语言的运用非常之多,它兼顾了高级语言和汇编语言的优点,相较于其它编程语言具有较大优势。计算机系统设计以及应用程序编写是C语言应用的两大领域。同时,C语言的普适较强,在许多计算机操作系统中都能够得到适用,且效率显著。
冯.诺依曼在1945年提出了现代计算机的若干思想,被后人称为冯.诺依曼思想,这是计算机发展史上的里程碑。自1945 年至今大多采用其结构,因此冯.诺依曼被称为计算机之父。
他的体系结构计算机由运算器、控制器、存储器、输入设备、输出设备五大部件构成。 C语言拥有一套完整的理论体系经过了漫长的发展历史,在编程语言中具有举足轻重的地位。
将三个数中的最小数作为除数,每次递减1,让三个数分别除,当三个商都为0的时候,此时的除数就是最大公约数,break循环
借用函数调用的方法来求,先求两个,再求最后的三个。
#include
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;
}
求出2个数的最大公约数在和第三那个数比较。
#include
using namespace std;
void main()
{
int m,n,i,r,temp;
cout<<"请输入第一个数的值: " ;
cin>>m;
cout<<"请输入第二个数的值: " ;
cin>>n;
cout<<"请输入第二个数的值: " ;
cin>>i;
if(n>m)
{
temp=m;
m=n;
n=temp;
}
r=m%n;
while(r!=0)
{
m=n;
n=r;
r=m%n;
}
if(n>i)
{
temp=i;
i=n;
n=temp;
}
while(r!=0)
{
i=n;
n=r;
r=i%n;
}
cout<<"最大公约数是:"<