#include<stdio.h> #include<math.h> #include<windows.h> int main() { int i,j; for(i=100;i<=200;i++) { for(j=2;j<=i-1;j++) { if(i%j==0) break; } if(j==i) printf("%d\n",i); } system("pause"); return 0; }
上为第一种,复杂度高,不过好想。
#include<stdio.h> #include<math.h> #include<windows.h> int main() { int i,j; for(i=100;i<=200;i++) { for(j=2;j<sqrt(i);j++) { if(i%j==0) break; } if(j==sqrt(i)+1) printf("%d\n",i); } system("pause"); return 0; }第二种稍作优化