用C++实现判断一个数是否为素数。要求在main函数中输入一个整数,判断是否为素数的过程由fun函数实现。
5个回答
展开全部
这个事判断是否为素数的子函数,我见过的最经典的代码
int func(int m)
{
int i;
for(i=2;i*i<=m;i++)
if(m%i==0)
return 0;
return 1; //这里说明一下,返回的值可以使m也可以是1,只要不是0就可以,
} //主要看你怎么利用,要是在调用的函数中想用到m这个值,可以返回m
//只是判断是否为素数,这个后面的return只要不是0就可以
int func(int m)
{
int i;
for(i=2;i*i<=m;i++)
if(m%i==0)
return 0;
return 1; //这里说明一下,返回的值可以使m也可以是1,只要不是0就可以,
} //主要看你怎么利用,要是在调用的函数中想用到m这个值,可以返回m
//只是判断是否为素数,这个后面的return只要不是0就可以
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
int prime(int m)
{
int i;
for(i=2;i<=m;i++)
if(m%i==0)
return 0;//不是素数
return 1; //是素数
}
{
int i;
for(i=2;i<=m;i++)
if(m%i==0)
return 0;//不是素数
return 1; //是素数
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <iostream.h>
int func(int m)
{
int i;
for(i=2;i*i<=m;i++)
if(m%i==0)
return 0;
return 1;
}
int main()
{
int m=0;
cin>>m;
if(func(m))
{
cout<<"素数";
}
else
{
cout<<"不是素数";
}
}
int func(int m)
{
int i;
for(i=2;i*i<=m;i++)
if(m%i==0)
return 0;
return 1;
}
int main()
{
int m=0;
cin>>m;
if(func(m))
{
cout<<"素数";
}
else
{
cout<<"不是素数";
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这是我以前的程序改的:
#include <condefs.h>
#include <math.h>
#include <stdlib.h>
#include <stdio.h>
int fun(int nNumber)
{
int nLoop,m;
if(nNumber==1)return 0;
if(nNumber==2)return 1;
if(nNumber==3)return 1;
m=(int)sqrt(nNumber);
for(nLoop =2;nLoop<=m;nLoop++)
{
if((nNumber%nLoop)==0)return 0;
}
return 1;
}
//---------------------------------------------------------------------------
int main(int argc, char* argv[])
{
int n;
printf("Plese input a integer number(end by Enter): \n");
scanf("%d", &n);
if( fun(n))
{
printf("%d是素数\n",n);
}
else printf("%d不是素数\n",n);
system("pause");
return 0;
}
#include <condefs.h>
#include <math.h>
#include <stdlib.h>
#include <stdio.h>
int fun(int nNumber)
{
int nLoop,m;
if(nNumber==1)return 0;
if(nNumber==2)return 1;
if(nNumber==3)return 1;
m=(int)sqrt(nNumber);
for(nLoop =2;nLoop<=m;nLoop++)
{
if((nNumber%nLoop)==0)return 0;
}
return 1;
}
//---------------------------------------------------------------------------
int main(int argc, char* argv[])
{
int n;
printf("Plese input a integer number(end by Enter): \n");
scanf("%d", &n);
if( fun(n))
{
printf("%d是素数\n",n);
}
else printf("%d不是素数\n",n);
system("pause");
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一楼命名空间没有啊,for循环中出问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询