任意输入一个整数,判断它是否为素数。是的话输出"Yes",不是的话输出"No"。
方法一:遇到大于1的因数就输出"No",并return 0
#include<iostream>
using namespace std;
int main()
{
//命名一个变量n,并输入,作为判断的数。
int n;
cin>>n;
//在for循环中命名一个变量i,用于判断n是否有大于1的因数(不包括n)。
for(int i=2;i<n;i++){
//判断i是否为n的因数 。
if(n%i==0){
//如果i为n的因数,输出No,并结束主函数。
cout<<"No";
return 0;
}
}
//如果能执行以下代码,说明n为质数,但因为1除外,所以必须判断n是否为1。
if(n!=1){
//如果不为1,那么n为质数 ,输出Yes。
cout<<"Yes";
}else{
//否则输出No。
cout<<"No";
}
return 0;
}
.方法二:标记法
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
int n;
cin>>n;
bool flag=false;
for(int i=2;i<sqrt(n);i++){
if(n%i==0){
flag=true;
break;
}
}
if(!flag&&n!=1)cout<<"Yes";
else cout<<"No";
return 0;
}
以上就是判断质数的代码。
7093

被折叠的 条评论
为什么被折叠?



