c语言求最大公约数?
求最大公约数可以使用辗转相除法,即不断用两个数的余数替换两个数,直到余数为0时,被除数即为最大公约数。具体步骤为:用两个数的较大值除以较小值,得到一个余数,然后再用较小值除以这个余数,得到新的余数,如此循环,直到余数为0。这时的被除数即为最大公约数。使用C语言可以通过while循环和取模运算实现。
C语言——求最大公约数和最小公倍数的简单程序?
首先我们输入两个整数m和n,小的数赋值给m,大的数给n。先找n的约数,用一个中间量i代替m,从i开始,如果n%i==0,则说明n,m的最大公约数就是m,否则执行第3步,i自减1,再执行n%i,判断n%i==0,如果是说明n能被i整除;执行第4步,否则再次执行第3步,判断m%i是否等于0,如果是说明n和m能同时被i整除,最大公约数为i;否则执行第3步,最小公倍数比较容易求,只要两数相乘,然后除以最大公约数就可以得到。
用C语言编写求最大公因数和最小公倍数的程序?
在visual C++ 6.0上,用C语言编写求最大公因数和最小公倍数的程序。
1打开visual C++ 6.0-文件-新建-文件-C++ Source File。
2输入预处理命令和主函数:#include<stdio.h> /*函数头:输入输出头文件*/void main() /*空类型:主函数*/。
3定义变量、输入数值:int a,b,t,c,d,i,f,r; /*定义变量的数据类型为整型*/printf("输入两个数,中间用逗号隔开:"); /*输出文字提示*/scanf("%d,%d",&a,&b); /*输入两个数字*/。
4if(a<b) /*用if函数比较a、b大小*/ {t=a; /*如果b大于a,则将a,b数值交换*/ a=b; b=t; }c=a;d=b; /*因为下面的程序会改变a,b的数值,所以将未改变的数值赋 给c,d*/。
5计算最大公因数和最小公倍数:while(r!=0) /*用while函数实现辗转相除法*/ {r=a%b; /*当余数为0,停止执行while函数时*/ a=b; /*最大公因数b的值赋给a*/ b=r; } i=c*d; /*将c乘d的值赋给i*/ f=i/a; /*将i除最大公因数a,得到最小公倍数,并将它赋给f*/。