//给定一个数n,判定它是否有一个不为1的完全平方数因子。也就是说,是否存在某个k,k>1,使得k*k能够整除n。 #include<stdio.h> int main() { int n; while (scanf("%d", &n) != EOF) { int i, flag = 0; for (i = 2; i <= n; i++) if (n % (i * i) == 0) flag = 1; if (flag == 1) printf("Yes\n"); else printf("No\n"); } return 0; }