x******a 发帖数: 6336 | 1 我想print 10个质数,编译可以通过,没有warning, 这个while里面有一些问题导致我打印出来是2,3,5,6,7,8,9,
10,... 请教是什么问题,谢谢。
#include
using namespace std;
//find and store the find n prime numbers,
void prime(int const N)
{
int a[N];
a[0]=2;
a[1]=3;
int m=4;
int j=2;
int i=0;
//test prime numbers and add to the array.
while(j
{
for(; i
{
if(m%a[i]==0) break;
}
if(i>=j)
{
a[j]=m;
j++;
}
m++;
}
for(int k=0; k
{
cout<
}
}
int main()
{
prime(10);
return 0;
} | X****r 发帖数: 3557 | 2 for(;改为for(i=0;
我打印出来是2,3,5,6,7,8,9,
【在 x******a 的大作中提到】 : 我想print 10个质数,编译可以通过,没有warning, 这个while里面有一些问题导致我打印出来是2,3,5,6,7,8,9, : 10,... 请教是什么问题,谢谢。 : #include : using namespace std; : //find and store the find n prime numbers, : : void prime(int const N) : { : int a[N]; : a[0]=2;
| x******a 发帖数: 6336 | 3 thank you Xentar.
It works.
I need to set i=0 for each while test. |
|