求素数的两种思路

#include <stdio.h>

int main(){
  int number=2, i=2 ,j=1;//number是1~1000的某个数,i用以循环结构的递加
  printf("1~1000之间的素数是\n");
  printf("%d\t",number);
  for(number=3;number<=1000;number++){
    for(i=2;i<number;i++){
      if(number%i==0) 
        break;
    }
    // if(i!=number-1)
    if(i!=number)
      continue;
    printf("%d\t",number);
    j++;
    if(j%10==0)
      printf("\n");   
  }
  return 0;
}
#include <stdio.h>

int main(){
  int number=2, i=2 ,cnt=0;//number是1~1000的某个数,i用以循环结构的递加

  printf("1~1000之间的素数是\n");

  printf("%d\t",number);

  for(number=3;number<=1000;number++){

    for(i=2;i<number;i++){

      if(number%i==0) 

      cnt++;//我的做法就是用cnt来计数,如果能除得尽,就计数,如果是质数的话,cnt会一直是0
    }
    if(cnt==0)

    printf("%d\t",number);  
    
    cnt=0; 
  }
  return 0;
  
}
posted @ 2015-08-01 13:02  樱风凛  阅读(318)  评论(0编辑  收藏  举报