思路就是:
创建一个存素数的数组A和判断这个数是不是素数的数组B,
首先将数组B默认设置为全都是素数,然后循环从2开始,判断如果这个数是素数的话,那就将他的倍数全都变成不是素数(有因子的数确实不是素数)然后将这个数存到A数组中,循环继续
这段代码就是输出了100以内的所有素数
#include
#include
#include
#include
#include
using namespace std;
int sushu[100];
bool is_sushu[100];
int num=0;
void judge_sushu(){int i,j;memset(is_sushu,true,sizeof(is_sushu));for(i&#61;2;i<100;i&#43;&#43;){if(is_sushu[i]){sushu[num&#43;&#43;]&#61;i;for(j&#61;2;j*i<100;j&#43;&#43;)is_sushu[i*j]&#61;false;}}is_sushu[0]&#61;false;is_sushu[1]&#61;false;}
int main(){int i;judge_sushu();for(i&#61;0;i<num;i&#43;&#43;)printf("%d ",sushu[i]);
}