您的位置:首页 > 其它

求1000以内的所有质数

2016-06-22 00:00 302 查看
摘要: 求1000以内的所有质数

[code=language-cpp]//筛选1000以内的所有质数
//说明:除了自身以外,无法被其它整数整除的数称之为质数。
//
#include <stdio.h>
#include <stdlib.h>
#define N 1000

int main(void) {
int i, j;
int prime[N + 1];
//初始化数组都等于1
for(    i = 2; i <= N; i++){
prime[i]=1;
}
//嵌套for循环筛选出能整除的相对于的数组至于0
for (i = 2; i * i <= N; i++) {
if (prime[i] == 1) {
for (j = 2 * i; j <= N; j++) {
if (j % i == 0)
prime[j] = 0;
}
}
}
//遍历数组、数组还等于1的是质数打印出来
for (i = 2; i < N; i++) {
if (prime[i] == 1) {
printf("%4d", i);
//隔几个换行
if ((i % 16) == 0){//不知道为什么没有起作用
printf("\n");
}
}
}
printf("\n");
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息