NEFU 素数
函数版素数判定 # include <bits/stdc++.h> using namespace std ; int num [ 10005 ] ; int a [ 10005 ] ; int t = 0 ; int sh ( ) //埃氏筛法(一般来说用此法筛素数就够了) { memset ( a , 1 , sizeof ( a ) ) ; a [ 0 ] = a [ 1 ] = 0 ; for ( int i = 2 ; i <= 10005 ; i ++ ) { if ( a [ i ] ) { num [ t ] = i ; t ++ ; for ( int j = 2 ; j * i < 10005 ; j ++ ) //筛掉当前数的倍数 a [ j * i ] = 0 ; } } return 0 ; } int su ( int n ) //判断是不是素数的函数 { int mark = 0 ; for ( int i = 0 ; num [ i ] <= sqrt ( n * 1.0 ) ; i ++ ) //判断方法 { if ( n % num [ i ] == 0 ) { mark = 1 ; break ; } } if ( n == 1 ) //此法不能判断1,把1单独拿出来 mark = 1 ; return mark ; } int main (