请C++高手帮忙看一下哪里错了~~明天就要交了~谢谢了

来源:百度知道 编辑:UC知道 时间:2024/05/04 12:42:21
输入一个数2-1000然后输出可以被哪些数整除(除了1和本身),如果是素数就输出这个数是素数,如果超出范围就输出空白,我们那老师还非要我们用函数写。。。小弟刚开始学觉得很难。。。怎么都觉得就应该这样。。。。谢谢各位了
#include <iostream>
using namespace std;

int number(int);
int prime (int);

int main()
{
int i;
int n;
cin>>n;
if((n<2) && (n>1000))
{
cout<<" ";
}

else if ( 2<n<1000 )
{
if(prime(n))
cout<<"the number "<<n<<" is prime";
else if (number(n))
{
cout<<"the number"<<" "<<n<<" is divisible by";
for(i = 2; i< n; i++)
cout<<" "<< number(n);
}
}
return 0;
}

int prime(int n)
{
int flag=1;
int i;
for(i=2;1<n/2 && flag==1;i++)
if(n%i==0)
flag=0;
return (flag);
}

int number(int

#include <iostream>
using namespace std;

void number(int);
int prime (int);

int main()
{

int n;
cout<<"Please input decided number:";
cin>>n;

if((n<2) || (n>1000))
{
cout<<"Inputed number not within 2~1000!\n";
}
else
{
int a=prime(n);
if(a==0)
cout<<"the number "<<n<<" is prime!\n";
else if(a==1)
{
cout<<"the number"<<" "<<n<<" is divisible by:";
number(n);
}
}
return 0;
}

int prime(int n)
{
int flag=0;
int i;
for(i=2;i<n&&flag==0;i++)
if(n%i==0)
flag=1;
return (flag);
}

void number(int n)
{
int i;
for(i = 2; i<=n; i++)