解题思路:
筛法没什么好说的,关键是bool数组的初始化
注意事项:
bool数组初始化似乎只能用memset ,本人在codeblock 上却可以直接这样初始化为0
bool a【10】={0};
参考代码:
#include<cmath>
#include<cstring>
#include<iostream>
using namespace std;
int main()
{
int n=10;
cin>> n;
bool a[n+1];
memset(a,0,sizeof(a));
int i;
for( i=2;i<=sqrt(n);i++)
{
for(int j=i;j<=n/i;j++)
{
a[i*j]=1;
}
}
for( i=2;i<=n;i++)
{
if(a[i]==0)
cout<<i<<endl;
}
}
0.0分
0 人评分
简单的a+b (C语言代码)浏览:541 |
C二级辅导-计负均正 (C语言代码)浏览:581 |
数列排序 (C语言代码)浏览:838 |
简单的a+b (C语言代码)浏览:534 |
简单的a+b (C++语言代码)浏览:863 |
Pascal三角 (C语言代码)浏览:1194 |
C语言训练-阶乘和数* (C语言代码)-------- 呆板写法浏览:1372 |
C语言程序设计教程(第三版)课后习题1.6 (C语言代码)浏览:547 |
The 3n + 1 problem (C语言代码)浏览:554 |
用筛法求之N内的素数。 (C语言代码)浏览:680 |