#include <stdio.h>
int main()
{
int num[10]; //数组
int min,max; //数组中最小数、最大数
int flag = 0; //记录
for(int i = 0; i < 10; i++)
{
printf("请输入%d个数字:", i + 1);
scanf("%d",&num[i]);
if(i == 0){
max = num[0];
min = num[0];
}
if(max < num[i]){
max = num[i];
}
if(min > num[i]){
min = num[i];
}
}
/* 公倍数大于或等于数组中的最大数 */
for(int i = max;; i++){
for(int j = 0; j < 10; j++){
if(i % num[j] != 0){
flag = 1; //如果不能整除数组中任意一个数字则记录为1
break;
}
}
if(flag == 0){
printf("最大公倍数为%d",i);
break;
}
}
/* 公约数小于或等于数组中最小数并且大于等于1 */
for(int i = min; i >= 1; i--){
for(int j = 0; j < 10; j++){
if(num[j] % i != 0){
flag = 1; //如果不能被数组中任意一个数字整除则记录为1
break;
}
}
if(flag == 0){
printf("最大公约数为%d",i);
break;
}
}
return 0;
}
求数组中最大公倍数和最小公约数
最新推荐文章于 2020-07-09 13:27:59 发布