码迷,mamicode.com
首页 > 编程语言 > 详细

c++质数判定及输出质数表

时间:2016-07-13 19:29:19      阅读:269      评论:0      收藏:0      [点我收藏+]

标签:

      本程序提示用户输入最大值,以此为范围,从最小质数2开始举判断质数,输出质数表。代码如下:

 1 // 素数表.cpp : 定义控制台应用程序的入口点。
 2 //
 3 
 4 #include "stdafx.h"
 5 
 6 
 7 int main()
 8 {
 9     int x = 2,y=1,b,line=0; //x最小质数2为枚举起点,y初值为1,之后递加1,b范围内最大质数,line每行输出的数的数量
10         cout << "请输入最大值:";
11         cin >> b;
12 
13         while (x <= b)
14         {
15             int z = x - y; //z随y递减1
16             int a = x%z; //取余数
17             if (a == 0)//如果x被z整除
18             {
19                 if (z == 1)//如果z为1(x是质数)
20                 {
21                     cout << x << "  ";//输出x
22                     x++;
23                     y = 1; //y还原
24                     line++;//每行输出的数的数量加1
25 
26                 }
27                 else//如果x为合数
28                     x++;
29                 y = 1;//y还原
30 
31 
32 
33             }
34             else//如果没有被整除
35                 y++;//y加1,下一次循环中z减1                            
36 
37 
38             if (line == 10)//每输出10个数                                                                                   
39             {
40                 cout << endl;//输出一个回车           
41                 line = 0;//还原line
42 
43             }
44         
45 
46     }
47     system("pause");
48     return 0;
49 }

以输入最大值为100为例,执行结果如下图:

技术分享

 

c++质数判定及输出质数表

标签:

原文地址:http://www.cnblogs.com/X-star/p/5667370.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!