素数环

作者在 2010-12-26 21:32:29 发布以下内容
#include<stdio.h>
#include<math.h>
void init();
void printresult();
void search(int);
int isprime(int);
void swap(int,int);
a[11];

void main()
{
init();
search(2);
}

void init()
{
int i;
for(i=1;i<=10;i++)
a[i]=i;
}

int isprime(int m)
{
int i;
for(i=2;i<=sqrt(m);i++)
if(m%i==0)
return 0;
return 1;
}

void printresult()
{
    int i;
    for(i=1;i<=10;++i)
    printf("%3d",a[i]);
    printf("\n");
}

void swap(int i,int j)
{
    int temp;
    temp=a[i];
    a[i]=a[j];
    a[j]=temp;
}

void search(int m)
{
    int i;
    if(m>10)
    {
    if(isprime(a[1]+a[10]))
    printresult();
    }
    else
    {
        for(i=m;i<=10;++i)
        {
            swap(m,i);
            if(isprime(a[m]+a[m-1]))
            search(m+1);
            swap(m,i);
        }
    }
}
            
        
程序 | 阅读 883 次
文章评论,共0条
游客请输入验证码
浏览29756次