请帮我看一下这个C语言程序的输出结果为什么不对 急!

2025年03月01日 12:39
有3个网友回答
网友(1):

1不是素数,你的函数没有考虑1的情况

网友(2):

在int prime(int m)函数中前边加一句话改成这样

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

网友(3):

很明显,prime()函数有逻辑错误,它把1也判断成素数了。