#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#define Max 100
int prime[Max+5];
void fun( )
{
memset( prime,0,sizeof( prime ) );//假设MAX内所有数都是素数并赋值为0
for( int i = 2; i <= Max / 2; ++i )//分别找出所有2--MAX/2内的所有数的倍数并赋值为1,标记为非素数
for( int j = i + i; j <= Max; j += i )
prime[j] = 1;
}
int main( )
{
fun( );
for( int i = 1; i <= Max; ++i )//输出1--MAX内的所有素数
if( !prime[i] )
printf( "%d ",i );
system( "pause" );
return 0;
}
转载于:https://www.cnblogs.com/zhangshu/archive/2011/05/31/2065126.html