选择p,q,p,q都是素数,。由于P和q都是大素数,所以为了方便由程序自动生成。
//产生随机素数p和q
void prime_random(int *p,int *q)
{
int i,k;
time_t t;
p[0]=1;
q[0]=3;
// p[19]=1;
// q[18]=2;
p[MAX-1]=10;
q[MAX-1]=11;
do
{
t=time(NULL);
srand((unsigned long)t);
for(i=1;i<p[MAX-1]-1;i++)
{
k=rand()%10;
p[i]=k;
}
k=rand()%10;
while (k==0)
{
k=rand()%10;
}
p[p[MAX-1]-1]=k;
}while((is_prime_san(p))!=1);
printf("素数 p 为 : ");
for(i=0;i<p[MAX-1];i++)
{
printf("%d",p[p[MAX-1]-i-1]);
}
printf("\n\n");
do
{
t=time(NULL);
srand((unsigned long)t);
for(i=1;i<q[MAX-1];i++)
{
k=rand()%10;
q[i]=k;
}
}while((is_prime_san(q))!=1);
printf("素数 q 为 : ");
for(i=0;i<q[MAX-1];i++)
{
printf("%d",q[q[MAX-1]-i-1]);
}
printf("\n\n");
return;
}