3~5 k=5
11 13 17 19 23
5~7 k=6
29 31 37 41 43 47 |
3~5 k=5
11 13 17 19 23
5~7 k=6
29 31 37 41 43 47
完成的源程序
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
| #include<stdio.h>
#include<math.h>
int prime(int n)
{
int i,flag=1;
for(i=1; i<=sqrt(n); i++)
if(n%i==0)flag=0;
return flag;
}
int fun(int a[],int n)
{
int i,k=0;
for(i=3; i<=n; i++)
if(prime(i)) a[k++]=i;
return k;
}
void fun1(int m,int n, int b[])
{
int i,k=0;
if(m>n) return 0;
for(i=m*m; i<n*n; i++)
if(prime(i)) b[k++]=i;
return k;
}
void main()
{
int a[50]= {0},b[100]= {0},i,m,k,j,n;
printf("input n: ");
scanf("%d",&n);
m=fun(a,n);
for(i=0; i<m-1; i++) {
k=fun1(a[i],a[i+1],b[0]);
printf("%d~%d k=%d",a[i],a[i+1],k);
if(k<4) {
printf("false");
break;
}
for(j=0; j<k; j++) {
if (j%10=0) printf("\n");
printf("%5d",b[j]);
}
printf("\n");
}
getch();
} |
#include<stdio.h>
#include<math.h>
int prime(int n)
{
int i,flag=1;
for(i=1; i<=sqrt(n); i++)
if(n%i==0)flag=0;
return flag;
}
int fun(int a[],int n)
{
int i,k=0;
for(i=3; i<=n; i++)
if(prime(i)) a[k++]=i;
return k;
}
void fun1(int m,int n, int b[])
{
int i,k=0;
if(m>n) return 0;
for(i=m*m; i<n*n; i++)
if(prime(i)) b[k++]=i;
return k;
}
void main()
{
int a[50]= {0},b[100]= {0},i,m,k,j,n;
printf("input n: ");
scanf("%d",&n);
m=fun(a,n);
for(i=0; i<m-1; i++) {
k=fun1(a[i],a[i+1],b[0]);
printf("%d~%d k=%d",a[i],a[i+1],k);
if(k<4) {
printf("false");
break;
}
for(j=0; j<k; j++) {
if (j%10=0) printf("\n");
printf("%5d",b[j]);
}
printf("\n");
}
getch();
}