用c++编译 输出[m,n]间所有素数,并且每5个换行,如果区间内不存在素数,输出0

2020-06-10 社会 84阅读

#include

#include


using namespace std;


void prime(int a,int b)    //输出素数的函数

{

int i;

int n = int(sqrt(a));

for(i = 2;i <= n;i++)    //只要2~根号a的数都不被a整除,就是素数

{

if(a%i == 0) break;

}

if(i > n) cout<

a++;

if(a > b) exit(0);    //到达b后退出函数

prime(a,b);    //递归计算

}


int main(int argc,char *argv[])

{

int m ,n;

cout<<"请输入m的值:";

cin>>m;

cout<<"请输入n的值:";

cin>>n;

cout<

prime(m,n);

cout<

return 0;

}


附上一张运行结果图:

声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com