编写出判断一个整数是否为素数的函数,并求出在2000以内的有十个以上的所有连续的非素数组。
#include <stdio.h>
int shusu(int a)
{
if (a == 2)return 0;
for (int b = 2; b < a; b++) {
if (a % b == 0) return a;
}
return 0;
}
int main()
{
int arr[2001] = { 0 };
int brr[2001] = { 0 };
int n = 0;
for (int b = 1; b <= 2000; b++) {
arr[b] = b;
}
for (int a = 1; a <= 2000; a++) {
if (shusu(a) ==a && shusu(a)!=0) {
brr[n] = shusu(a); n++;
}
}
int g = 1;
for (int a = 0; a < 2000; a++) {
if (brr[a] + 1 == brr[a + 1]) g++;
if (brr[a] + 1 != brr[a + 1] && g >= 10 )
for (int s = a - g + 1; s <= a; s++){
printf(" %d", brr[s]);
if (s == a)printf("\n");
}
if (brr[a] + 1 != brr[a + 1])g = 1;
}
return 0;
}
输出结果如下