C语言用递归的方法来判断某个数是不是素数

C++也可以,一定要用递归,其他的普通算法就别说了

第1个回答  2012-06-17
void fun(int m)
{
static int k=(int)sqrt((double)m);
if(k < 2)
{

printf("该数字是素数。\n");
return ;
}
if(m%k==0)
{
printf("该数字不是素数。\n");
return ;
}
k--;
fun(m);
}
第2个回答  推荐于2017-09-19
#include <stdio.h>
int isprime(int n,int a)
{
if(n<2)
{
return 0;
}
if(a==n)
{
return 1;
}
if(n%a==0)
{
return 0;
}
else
{
isprime(n,a+1);
}

}
int main()
{
int n;
scanf("%d",&n);
if(isprime(n,2))
{
printf("Yes\n");
}
else
{
printf("NO\n");
}
return 0;
}本回答被提问者采纳