c++如何判断一个数字是否为素数



使用c++判断素数,c++如何判断一个数字是否为素数?判断素数的方法有很多,以下是其中的一中方法,实例源码如下:

#include<iostream.h> 
int prime(int n); 
void main() 
{
 int n; 
 cout<<"请输入一个整数"<<endl; 
 cin>>n; 
 if (prime(n)) 
  cout<<"是素数"<<endl; 
 else 
  cout<<"不是素数"<<endl;
} 
int prime(int n) 
{
 for (int i=2;i<n/2+1;i++) 

  if (n%i==0) 
  {
   return false;
   break; 
  }
   return true;  
prime函数的回调不太懂?请看下面的解析:
上面程序解析:
你回想下数学上素数是什么意思:
只能被1和他本身整除
int prime(int n) 
{
//这个就是通过i枚举从2 到 n/2的所以数
 for (int i=2;i<n/2+1;i++)  
//n%i,看是否有一个数能整除该数
  if (n%i==0) 
  {
   //假如有的话就返回个false说明这个数不是素数
   return false;
   break; 
  }
  //枚举了所有数都没有数能够整除该数,说明该数是素数,返回true
   return true;  
}

for (int i=2;i<n/2+1;i++) 
if (n%i==0)