输出质数表
输出从0到给定的N之间(包含N)的所有质数。1<N<1000。注意1不是质数,2是质数。
- 输入
-
输入有m+1行,第一行输入测试数据的组数m,下面的m行每行输入一个数N。
- 输出
-
输出有m行,每行输出从0到对应给定的N之间(包含N)的所有质数。
- 样例输入
-
2
-
5
-
11
- 样例输出
-
2 3 5
-
2 3 5 7 11
简单的判断
#include<stdio.h> main() { int m,n,i,num; int p[1002]; long int s; int temp; int te,number; s=2; m=1; n=1; num=1; p[1]=2 ; scanf("%d",&number); for (te=1;te<=number;te++) {s=2; m=1; n=1; num=1; p[1]=2; scanf("%d",&temp); for (;num<temp;num++) { for (i=1,n=2; { m=p[i] ; if (m>s/2) break; else if(m*n<s) n++; else if(m*n==s) { s++; i=1; n=2; } else if(m*n>s) { i++; n=2; } } p[num]=s; if(s>temp) break; printf ("%ld ",s); s++; } printf("\n"); } }