#define _CRT_SECURE_NO_WARNINGS 1 #include#include #include #include #include int ConfirmPrime(int a) { switch (a) { case 0: return 0; case 1:return 0; case 2:return 1; default: for (int i = 2; i < a; i++) { if (a % i == 0) { return 0; } } return 1; } } void GetPrimeFactor(int a) { for (int i = 2; i <= a; i++) { while (a % i == 0) { a /= i; printf("%d ", i); } } } void main() { int a, i; int* myArray; printf("请输入想创建的数组的元素个数:"); scanf("%d", &a); myArray = (int*)malloc(sizeof(int) * a); srand(time(NULL)); printf("随机生成的数组中元素如下:"); for (i = 0; i < a; i++) { myArray[i] = rand() % 110 + 1; printf("%d ", myArray[i]); } printf("n===============================================================n"); for (int j = 0; j < a; j++) { switch (ConfirmPrime(myArray[j])) { case 0:printf("%d不是素数,分解质因数结果如下:", myArray[j]);GetPrimeFactor(myArray[j]); printf("nn"); break; case 1:printf("%d是素数,分解质因数结果如下:1 ", myArray[j]);GetPrimeFactor(myArray[j]); printf("nn"); break; default:break; } } }



