#include stdio.h#include math.h#define SIZE 100int status[SIZE];void sieve(){int i, j, sq;
编程学习网为您整理以下代码实例,主要实现:从数字列表中打印素数,例如1到1000,希望可以帮到各位朋友。
#include <stdio.h>
#include <math.h>
#define SIZE 100
int status[SIZE];
voID sIEve()
{
int i, j, sq;
for(i = 0; i < SIZE; i++) {
status[i] = 0;
}
sq = sqrt(SIZE);
for(i=4;i<=SIZE;i+=2) {
status[i] = 1;
}
for(i = 3; i <= sq; i += 2)
{
if(status[i] == 0){
for(j = 2*i; j <= SIZE; j += i)
status[j] = 1;
}
}
status[1] = 1;
}
int main(){
int i, counter = 100;
sIEve();
printf("\nFollowing numbers are prime in the range: 1 to %d :\n", counter);
for (i = 1; i < counter; i++){
if(status[i]==0) {
printf("%d\t", i);
}
}
return 0;
}
沃梦达教程
本文标题为:从数字列表中打印素数,例如1到1000
基础教程推荐
猜你喜欢
- 用指数格式表示浮点数 1970-01-01
- 向量<unique_ptr<A>>使用初始化列表 2022-10-23
- C语言3个整数的数组 1970-01-01
- 迭代std :: bitset中真实位的有效方法? 2022-10-18
- C语言数组 1970-01-01
- C++多态 1970-01-01
- 明确指定任何或所有枚举数的整数值 1970-01-01
- 对 STL 容器的安全并行只读访问 2022-10-25
- C++:为什么结构类需要一个虚拟方法才能成为多态? 2022-10-19
- 总计将在节日礼物上花多少钱 1970-01-01
