003 数素数
/* 题目描述 令Pi表示第i个素数。现任给两个正整数M <= N <= 10000,请输出PM到PN的所有素数。 输入描述: 输入在一行中给出M和N,其间以空格分隔。 输出描述: 输出从PM到PN的所有素数,每10个数字占1行,其间以空格分隔,但行末不得有多余空格。 输入例子: 5 27 输出例子: 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 */ # include <iostream> # include <math.h> using namespace std ; void find ( int * p ) //寻找素数并保存在数组内 { int flag , temp = 1 ; //flag用来标识是否为素数,temp指示数组下标, p[0]置空 p [ temp ++ ] = 2 ; for ( int i = 3 ; i < 150000 ; i ++ ) { flag = 1 ; for ( int j = 2 ; j <= sqrt ( i ) ; j ++ ) //sqrt,开方函数,用于减少循环次数 { if ( i % j == 0 ) { flag = 0 ; break ; } } if ( flag == 1 ) p [ temp ++ ] = i ;