#include<iostream>
#include<cmath>
bool flag;
using namespace std;
int main()
{
int prime (int);////////////这个申明应在main()上面
int a;
cout<<"input a:";
cin>>a;
/////////////
prime(int)未调用
if(flag=0)
///////////////if(flag==0)
cout<<a<<"is not a prime"<<endl;
else
cout<<a<<"is
a prime"<<endl;
return 0;
}
int prime(int a)
{int i,m,flag=1;
m=sqrt(a);
for(i=2;i<=m;i++)
{if(a%i==0)
flag=0;
else
flag=1;}
return (flag);
}
////////////////////////////
/////////////////////////
更改后
#include<iostream>
#include<cmath>
using namespace std;
int prime (int);
int main()
{
int flag;
int a;
cout<<"input a:";
cin>>a;
flag=prime(a);
if(flag==0)
cout<<a<<"is not a prime"<<endl;
else
cout<<a<<"is
a prime"<<endl;
return 0;
}
int prime(int a)
{int i,m,flag=1;
m=sqrt(a);
for(i=2;i<=m;i++)
{if(a%i==0)
flag=0;
else
flag=1;}
return (flag);
}