大一刚搞的时候敲的
1 #include "stdio.h" 2 #include "stdlib.h" 3 #include "math.h" 4 int main() 5 { 6 int i, j, c, prime[1000], b[1000], m, n, t, min, max; 7 prime[0] = 1; 8 memset(b, 0, sizeof(b)); 9 while (scanf("%d%d", &m, &n) != EOF) 10 { 11 c = 1; 12 for (i = 2; i <= m; i++) 13 if (!b[i]) 14 { 15 prime[c++] = i; 16 for (j = i*i; j <= m; j += i) 17 b[j] = 1; 18 } 19 t = (c) / 2; 20 printf("%d %d:", m, n); 21 if (t - n<0) 22 min = 0; 23 else 24 { 25 min = t - n; 26 if (c % 2) 27 min++; 28 } 29 if (t + n >= c) 30 max = c; 31 else 32 33 max = t + n; 34 35 36 for (j = min; j<max; j++) 37 printf(" %d", prime[j]); 38 printf(" "); 39 } 40 return 0; 41 }