C语言:编写函数int is_prime(int m)判断m是否为素数,若是则返回1,否则返回0.急求大神帮忙。

2024-11-12 09:03:47
推荐回答(2个)
回答(1):

#include
#include
int IsPrime(int N)
{
    int i, j;
    if (N == 2)
        return 1;
    else if (N < 2 || N % 2 ==0)
        return 0;
    else
    {
        j = (int)sqrt(N + 1);
        for (i = 3; i <= j; i = i + 2)
            if (N % i == 0)
                return 0;
    }
    return 1;
}

int main()
{
    int i,m=0,a[100];
    for(i=0; i<=100; i++)
        if(IsPrime(i)) a[m++]=i;
        for(i=1;i            if(a[i]-a[i-1]==2) printf("%d %d\n",a[i-1],a[i]);
    return 0;
}

回答(2):

int main(){
    int i;
    for(i=2;i<=100;i++){
        if(is_prime(i)&&is_prime(i+2)) printf("%d %d\n",i,i+2);
    }
    return 0;
}