/**
*功能:编写一个程序使用两重for循环和模运算符(%)去寻找和输出质数(只能被1和它本身
*整除的整数)。
*时间:2014年8月15日08:19:48
*作者:cutter_point
*/
#include<iostream>
#include<cstdlib>
using namespace std;
//写一个函数输出质数(只能被1和它本身*整除的整数)
void printZhiShu(int n) //给出0到多少的数之间的质数
{
cout<<1<<"\t是质数\n";
//使用两重for循环,模运算符(%),1不用想
//一层循环是重2到n这些数字一个个找
for(int i=2 ; i <= n ; ++i)
{
//重2到它本身就只有他本身可以取模为0
for(int j=2 ; j <= i ; ++j)
{
int m=i%j; //对j取模
if(j != i && m==0)
{
break; //如果不是质数立马排除
}
cout<<i<<"\t是质数\n";
break;
/*
else if(j == i && m == 0) //结果遍历到了本身才能被整除那么就是质数
{
cout<<i<<"\t是质数\n";
}
*/
}
}
}
int main()
{
while(1)
{
int i=0;
cout<<"输入你想求在什么范围内的数是否是质数(0退出程序):";
cin>>i;
if(i < 0)
{
cout<<"请不要输入负数!!"<<endl;
continue;
}
else if(i == 0)
break;
else
{
printZhiShu(i);
}
}
system("pause");
return 0;
}
【ThinkingInC++】20、关于C的习题(2),布布扣,bubuko.com
原文:http://blog.csdn.net/cutter_point/article/details/38579757