首页 > 代码库 > 【ThinkingInC++】20、关于C的习题(2)
【ThinkingInC++】20、关于C的习题(2)
/** *功能:编写一个程序使用两重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; }
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。