十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
#include
创新互联公司-云计算及IDC服务提供商,涵盖公有云、IDC机房租用、雅安移动机房、等保安全、私有云建设等企业级互联网基础服务,电话联系:18980820575
"stdio.h"
int
main()
{
int
d1,d2,r;
printf("输入两个正整数:");
scanf("%d
%d",d1,d2);
do
{
r=d1%d2;
d1=d2;d2=r;
}while(d2!=0);
printf("最大公约数是:%d",d1);
}
//递归法
#include
"stdio.h"
int
fun(int
d1,int
d2)
{
if(d2!=0)
return
fun(d2,d1%d2);
else
return
d1;
}
int
main()
{
int
d1,d2;
printf("输入两个正整数:");
scanf("%d
%d",d1,d2);
printf("最大公约数是:%d",fun(d1,d2));
}
具体操作步骤如下:
一、新建一个C语言源程序,使用Visual C++6.0的软件。
二、从键盘中输入两个正整数a和b。代码:printf("please input two number:\n");int a,b;scanf("%d%d",a,b)。
三、取两个数a,b中的较小值存放到变量n中。代码:int n=a;if (nb)n=b。
四、从两个数a和b中的较小数开始逐个减小1,寻找能整除a和b的整数。第一个找到的整数即整数a和b的最大公约数。
五、点击工具栏的如图图标,对源程序编译运行。
六、测试输入4,6,得到最大公约数2。程序是正确的,以测试更多的数。
七、
上面面步骤是编程的思路,给出完整代码,方便复制使用。#includestdio.hvoid main(){printf("please input two number:\n"); int a,b;;scanf("%d%d",a,b);//从键盘输入两个数 int n=a; ;f (nb) n=b;//取两个数中的较小数 for(int i=n;i=1;i--) { if (a%i==0b%i==0) { printf("最大公约数:%d \n",i); break;}}}。
#include stdio.h
int main()
{
int a,b,c,m,t;
printf("请输入两个数:\n");
scanf("%d%d",a,b);
if(ab)
{
t=a;
a=b;
b=t;
}
m=a*b;
c=a%b;
while(c!=0)
{
a=b;
b=c;
c=a%b;
}
printf("最大公约数是:\n%d\n",b);
printf("最小公倍数是:\n%d\n",m/b);
}
扩展资料
算法思想
利用格式输入语句将输入的两个数分别赋给 a 和 b,然后判断 a 和 b 的关系,如果 a 小于 b,则利用中间变量 t 将其互换。
再利用辗转相除法求出最大公约数,进而求出最小公倍数。最后用格式输出语句将其输出。
#includestdio.h是在程序编译之前要处理的内容,称为编译预处理命令。编译预处理命令还有很多,它们都以“#”开头,并且不用分号结尾,所以是c语言的程序语句。
#include stdio.h
int main(int argc,char *argv[]){
int a,b,r;
if(scanf("%d%d",a,b)!=2 || a1 || b1){
printf("Input error, exit...\n");
return 0;
}
while(b){
r=a%b,a=b,b=r;
}
printf("The GCD is %d\n",a);
return 0;
}