c++ 判断素数 (for语句 / while语句 / do while语句)

c++ 判断素数 (for语句 / while语句 / do while语句)


以判断1000到1100中的素数有哪些为例

1. 利用for语句实现素数的判断

#include "stdafx.h"
#include
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{int i, j, n, m;for (i = 1000; i <= 1100; i++)//判断1000到1100中的素数有那些{m = 1;   //所有值下面对应m=1n = i / 2;  //m和n都是实参for (j = 2; j <= n; j++)if (i % j == 0){m = 0;      //i/j的余数为零,即可以整出,此时,m的值改为0,这个数i就不是素数,然后跳出这个循环break;}if (m!=0)  //只有当m不等于0的时候i才是素数 cout << i << " ";}return 0;
}

运行结果如下图所示
运行结果1.0
2. 利用while语句实现素数的判断

#include "stdafx.h"
#include;
using namespace std;int _tmain(int argc, _TCHAR* argv[])
{int i, j, n, m;i = 1000;while (i <= 1100)    //while语句是先判断表达式再执行循环语句{m = 1; n = i / 2;j = 2;while (j <= n){if (i%j == 0){m = 0;break;}j++;}if (m != 0)cout << i << " ";i++;}return 0;
}

运行结果如下图所示
运行结果2.0
3. 利用do while语句实现素数的判断

#include "stdafx.h"
#include;
using namespace std;int _tmain(int argc, _TCHAR* argv[])
{int i, j, n, m;i = 1000;do{                              //do...while语句是先执行循环体语句再判断表达式的值m = 1; n = i / 2; j = 2;do{if (i%j == 0){m = 0;break;}j++;} while (j <= n);if (m != 0)cout << i << " ";i++;} while (i <= 1100);return 0;
}

运行结果如下图所示
运行结果3.0


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部