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

2025-03-01 12:39:17
推荐回答(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也判断成素数了。