#include "stdafx.h" #include <iostream> #include <math.h> bool IsSushu(int n) { bool IsSushuFlg = true; if( n <= 1) { return false; } for( int i = 2; i <= (int)sqrt((double)n); i++ ) { if( 0 == n % i ) { IsSushuFlg = false; break; } } return IsSushuFlg; } #define N 1000 int main() { printf("Su shu is: /n"); for( int i = 2; i < N; i++) { bool IsSushuFlg = IsSushu(i); if( IsSushuFlg ) { printf("%d /n", i); } } system("pause"); return 0; } 判断一个数是不是素数时,只需要判断此数能不能被从2到其平方根之间的数整除即可,如果不能整除则是素数。 注意,1既不是素数也不是合数。