素数对的程序,下面这个程序哪里错了

源码港湾 其他问答 1
#include<stdio.h>
#include<math.h>
int a(int x){
int i;
if(x==1||x==0)
{return 0;}
else if(x==2){
return 1;}
else if(x>2){
for(i=0;i<=sqrt(x)+1;i++)
if(x%i==0)
return 0;
}
else {return 1;}
}
int main()
{ int j,n;
scanf("%d",&n);
for(j=0;j<=n;j++)
{if(a(j)==1&&a(j+2)==1)
{printf("%d %d",j,j+2);
}
}
return 0; }

回复

共2条回复 我来回复
  • 毕业设计客栈
    这个人很懒,什么都没有留下~
    评论
    #include <stdio.h>
    #include <math.h>
    int a(int x)
    {
        int i;
        if (x == 1 || x == 0)
        {
            return 0;
        }
        else if (x == 2)
        {
            return 1;
        }
        else if (x > 2)
        {
            for (i = 2; i <= sqrt(x) + 1; i++)
                if (x % i == 0)
                    return 0;
        }
        return 1;
    }
    int main()
    {
        int j, n;
        scanf("%d", &n);
        for (j = 0; j <= n; j++)
        {
            if (a(j) == 1 && a(j + 2) == 1)
            {
                printf("%d %d  ", j, j + 2);
            }
        }
        return 0;
    }
    
    0条评论
  • 源码码头
    这个人很懒,什么都没有留下~
    评论
    #include<stdio.h>
    #include<math.h>
    int a(int x) {
        int i;
        if (x == 1 || x == 0)
        {
            return 0;
        }
        else if (x == 2) {
            return 1;
        }
        else if (x > 2) {
            for (i = 2; i <= sqrt(x) + 1; i++)
                if (x % i == 0)
                    return 0;
        }
        return 1;
    }
    int main()
    {
        int j, n;
        scanf("%d", &n);
        for (j = 0; j <= n; j++)
        {
            if (a(j) == 1 && a(j + 2) == 1)
            {
                printf("%d %d\n", j, j + 2);
            }
        }
        return 0;
    }
    
    0条评论

发表回复

登录后才能评论