用c++编写一个类输出100到200的素数,对不起我是刚学的c++,问一些简单的问题!

#include
#include
#include
using namespace std;
class Prime
{
private:
int a[25];
int n1,n2;
int num;
public:
Prime(int n1,int n2,int num);
void primef();
void show();
};
Prime::Prime(int m1,int m2,int n):n1(m1),n2(m2),num(n){}
void Prime::primef()
{
int m,i,k,leap=1,h=0;
for(m=100;m<=200;m++)
{
k=sqrt(m);
for(i=2;i<=k;i++)
{
if(m%i==0)
{
leap=0;
}
}
if(leap==1)
{
a[h]=m;
h=h+1;
num=1+num;
}
}
cout<<num;
}
void Prime::show()
{
int j;
for(j=0;j<=(num-1);j++)
{
cout<<"a[j]="<<a[j]<<" ";
if(j%5==0)
cout<<endl;
}
cout<<"num="<<num<<endl;
}
int main()
{
Prime p(100,200,0);
p.primef();
p.show();
return 0;
}

c++

2个回答

什么意思?看不出来在问什么啊

for(m=100;m<=200;m++)
{
k=sqrt(m);
for(i=2;i<=k;i++)
{
if(m%i==0)
{
leap=0;
}
}
if(leap==1)
{

a[h]=m;
h=h+1;
num=1+num;
}
//....
}

这个部分有问题,你
int leap = 0;


if(m%i==0)
{
leap=0;
}
修改成
if(m%i==0)
{
leap++;
}

下面
if( leap==0 )
{

a[h]=m;
h=h+1;
num=1+num;
}

你再试试

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问