输入一个正整数n,判断n是否是素数。如果n是素数,则输出yes,否则输出no。C++ 请问下面我的代码哪里错了

#include<iostream>
#include<cmath>
using namespace std;
int main()
{
int m,n,k;
cin>>m;
k=sqrt(m);
for(n=2;n<k;n++)
if(m%n==0) break;
if(m<=k)
cout<<"No\n";
else
cout<<"Yes\n";
return 0;
}

第1个回答  2015-11-09
if(m<=k)这里应该是if(n<=k)吧……
for(n=2;n<k;n++)这里改成for(n=2;n<=k;n++)本回答被网友采纳
第2个回答  2018-09-28
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
int m,n,k;
cin>>m;
int tmp=m;
k=sqrt(m);
for(n=2;n<=k;n++)//这里你错了
if(m%n==0)
{
m=m/n;
break;
}
if(m==tmp)
cout<<"No!\n";
else
cout<<"Yes!\n";
return 0;
}
第3个回答  2018-07-22
#include<iostream>
using namespace std;
int main()
{
int n,s=0;
cin>>n;
for(int i=2;i<=n/i;i++)
if(n%i==0)
{
s++;
break;
}
if(s==0)cout<<"Yes\n";
else cout<<"No\n";
return 0;
}
相似回答