1 1306 循环求素数10.1.5.253 2 3 C语言:循环结构9(求素数) 4 时间限制(普通/Java):1000MS/3000MS 5 总提交:901 测试通过:396 6 7 描述 8 9 10 输入二个整数a和b(2<=a<b<1000),输出a和b之间的素数。 11 12 13 输入 14 15 16 有多组数据,每组包括两个整数a和b。 17 18 19 输出 20 21 a和b之间的素数,每组输出一行,每个素数后面有1个空格。 22 23 样例输入 24 25 2 10 26 8 23 27 28 样例输出 29 30 2 3 5 7 31 11 13 17 19 23 32 33 34 35 36 37 38 #include <stdio.h> 39 int prime(int x) 40 { int i; 41 for(i=2; i<x; i++) 42 if (x%i==0) return 0; 43 return 1; 44 } 45 int main() 46 { 47 int i,a,b; 48 while ( scanf("%d%d",&a,&b)!=EOF ) 49 { 50 for (i=a; i<=b; i++) 51 if (prime(i)==1) printf("%d ",i); 52 printf("\n"); 53 } 54 return 0; 55 } 56 57 58 ***************************************************************** 59 60 61 62 #include<stdio.h> 63 int main() 64 { 65 int n,a,b,i; 66 a>=2; 67 a<b; 68 b<1000; 69 while( scanf("%d%d",&a,&b)==2) 70 { 71 for(n=a;n<=b;n++) 72 { 73 for(i=2;i<=n-1;i++) 74 if(n%i==0) break; 75 if(i>=n) 76 printf("%d ",n); 77 } 78 printf("\n"); 79 }return 0; 80 } 81 82 83 84 85 86 87 #include <stdio.h> 88 int main() 89 { 90 int a,b,i,j,k; 91 while(scanf("%d%d",&a,&b)!=EOF) 92 { 93 for(i=a;i<=b;i++) 94 { 95 for(j=2;j<=i-1;j++) 96 if(i%j==0) 97 break; 98 if(i==j) 99 printf("%d ",i); 100 } 101 printf("\n"); 102 } 103 return 0; 104 }
1306 循环求素数10.1.5.253 C语言:循环结构9(求素数) 时间限制(普通/Java):1000MS/3000MS 5 总提交:901 测试通过:396 描述 输入二个整数a和b(2<=a<b<1000),输出a和b之间的素数。 输入 有多组数据,每组包括两个整数a和b。 输出 a和b之间的素数,每组输出一行,每个素数后面有1个空格。 样例输入 2 10 8 23 样例输出 2 3 5 7 11 13 17 19 23 #include <stdio.h> int prime(int x) { int i; for(i=2; i<x; i++) if (x%i==0) return 0; return 1; } int main() { int i,a,b; while ( scanf("%d%d",&a,&b)!=EOF ) { for (i=a; i<=b; i++) if (prime(i)==1) printf("%d ",i); printf("\n"); } return 0; } ***************************************************************** #include<stdio.h> int main() { int n,a,b,i; a>=2; a<b; b<1000; while( scanf("%d%d",&a,&b)==2) { for(n=a;n<=b;n++) { for(i=2;i<=n-1;i++) if(n%i==0) break; if(i>=n) printf("%d ",n); } printf("\n"); }return 0; } #include <stdio.h> int main() { int a,b,i,j,k; while(scanf("%d%d",&a,&b)!=EOF) { for(i=a;i<=b;i++) { for(j=2;j<=i-1;j++) if(i%j==0) break; if(i==j) printf("%d ",i); } printf("\n"); } return 0; }
//1306 #include<stdio.h> main() { int a,b,max,min,n,m=0,i; while(scanf("%d%d",&a,&b)!=EOF) { max=a>b?a:b; min=a<b?a:b; while(max>=min) { for(i=1;min>i;) { if(min%i==0) { n=min/i; m+=n; } i++; } if(min==m) printf("%d\ ",min); min++; m=0; } printf("\n"); }return 0; }
//1306 #include<stdio.h> int main() { int n,a,b,i; while( scanf("%d%d",&a,&b)==2) { for(n=a;n<=b;n++) { for(i=2;i<=n-1;i++) if(n%i==0) break; if(i>=n) printf("%d ",n); } printf("\n"); }return 0; }
// 1313
1 C语言:数组4(筛法求素数) 2 时间限制(普通/Java):1000MS/3000MS 运行内存限制:65536KByte 3 总提交:278 测试通过:147 4 5 描述 6 7 8 输入二个整数a和b(2<=a<b<1000),输出a和b之间的素数。 9 10 注意:必须使用数组筛法。 11 12 13 输入 14 15 有多组数据,每组包括两个整数a和b。 16 17 输出 18 19 a和b之间的素数,每组输出一行,两个素数之间用1个空格分开。 20 21 样例输入 22 23 2 10 24 8 23 25 26 样例输出 27 28 2 3 5 7 29 11 13 17 19 23 30 31 32 33 34 *************************************************************************** 35 36 37 38 39 #include<stdio.h> 40 void premer(int n) 41 { int i,flag=1; 42 for(i=2;i*i<=n;i++) 43 if(n%i==0) 44 flag=0; 45 if(flag) 46 printf("%d ",n); 47 } 48 int main() 49 { int a,b,i; 50 while(scanf("%d%d",&a,&b)!=EOF) 51 { for(i=a;i<=b;i++) 52 premer(i); 53 printf("\n"); 54 } 55 return 0; 56 } 57 58 59 60 61 62 63 64 #include<stdio.h> 65 66 int main() 67 { 68 int x[1000]={0},a,b,i,j; 69 70 for (i=2; i<1000; i++) 71 if ( x[i]==0) 72 for (j=i+i;j<1000;j=j+i ) 73 x[j]=1; 74 75 while (scanf("%d%d",&a,&b)==2) 76 { 77 for (i=a; i<=b; i++) 78 if (x[i]==0 ) printf("%d ",i); 79 printf("\n"); 80 } 81 82 return 0; 83 } 84 85 86 87 88 89 90 91 92 93 #include<stdio.h> 94 95 int main() 96 { 97 int x[1000]={0},a,b,i,j; 98 99 for (i=2; i<1000; i++) 100 for (j=i+i;j<1000;j=j+i ) 101 x[j]=1; 102 103 while (scanf("%d%d",&a,&b)==2) 104 { 105 for (i=a; i<=b; i++) 106 if (x[i]==0 ) printf("%d ",i); 107 printf("\n"); 108 } 109 110 return 0; 111 } 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 **************************************************************************** 130 131 #include<stdio.h> 132 int main() 133 { 134 int x[1000]={0},a,b,i,j; 135 for(i=2;i<1000;i++) 136 for(j=i+i;j<1000;j=j+i) 137 x[j]=1; 138 while(scanf("%d%d",&a,&b)==2) 139 { 140 for(i=a;i<=b;i++) 141 if(x[i]==0) printf("%d ",i); 142 printf("\n"); 143 } 144 return 0; 145 } 146 147 148 149 150 #include <stdio.h> 151 int main() 152 { 153 int k,a,b,x,y; 154 while(scanf("%d%d",&a,&b)!=EOF) 155 { 156 for(x=a;x<=b;x++) 157 { 158 for(y=2;y<=b-1;y++) 159 if(x%y==0)break; 160 if(y>=x) 161 printf("%d ",x); 162 } 163 printf("\n"); 164 } 165 } 166 167 168 169 170 171 172 173 #include <stdio.h> 174 int main() 175 { 176 int k,a,b,x,y; 177 while(scanf("%d%d",&a,&b)!=EOF) 178 { 179 for(x=a;x<=b;x++) 180 { 181 for(y=2;y<=x;y++) 182 if(x%y==0) break; 183 if(x==y) 184 printf("%d ",x); 185 } 186 printf("\n"); 187 } 188 } 189 190 191 192 193 194 195 196 #include <stdio.h> 197 int main(int argc, char *argv[]) 198 { 199 int a,b,i,j; 200 while(scanf("%d%d",&a,&b)!=EOF) 201 { 202 for(i=a;i<=b;i++) 203 { 204 for(j=2;j<=b;j++) 205 if(i%j==0)break; 206 if(i==j)printf("%d ",i); 207 }printf("\n"); 208 } 209 return 0; 210 }