题目链接:
解题思路:
参考代码:
#include<bits/stdc++.h>
using namespace std;
int max_yue (int data1,int data2)
{
// int data1 = 0, data2 = 0;
int m = 0; //该变量是中间变量,不能放在while函数的内部
//scanf_s("%d %d", &data1, &data2);
while ((m = data1 % data2) != 0)
{
data1 = data2;
data2 = m;
}
//printf("最大公约数为%d\n", data2);
return data2;
}
int main( )
{
int length = 0;
cin >> length;
int arr[100] = {0};
for(int i = 1;i <= length;i++)
{
cin >> arr[i];
}
int ans = max_yue(arr[1],arr[2]);
for(int j = 3;j <= length;j++)
{
ans = max_yue(ans,arr[j]);
}
cout << ans;
return 0;
}