终止条件很怪,没给,是scanf返回值为EOF的时候。
GCD算法:
a b
b a%b
... ...
a 0
最后b为0时返回a即可。
a为1,最大公因数为1,互质;否则不互质。
#include<cstdio>
int a[600];
// a>b
int gcd(int a, int b){
    if(b==0) return a;
    return gcd(b, a%b);
}
int main(){
    int n;
    while(scanf("%d", &n)!=EOF){
        int count = 0;
        for(int i=0;i<n;++i){
            scanf("%d", &a[i]);
        }
        for(int i=0;i<n;++i){
            for(int j=i+1;j<n;++j){
                if(gcd(a[j],a[i])>1) continue;
                ++count;
            }
        }
        printf("%d\n", count);
    }
    return 0;
}