编写一个函数,判断一个数 n是否为素数。在主函数调用该函数,输出一千以内的素数

如题所述

#include <stdio.h>
#include <math.h>

void primer(int limit_num)
{
int j,k,i;
for(i = 1;i <= limit_num;i = i + 2)
{
k = sqrt(i);
for(j = 2;j <= k;j++)
{
if(i % j ==0)break;
}
if(j >= k + 1)
{
printf("%d ",i);
}
}

}
int main()
{
int limit_num = 1000;
primer(limit_num);
return 0;
}

追问

出错了

追答

k=sqrt(i) 不是k+sqrt(i)

追问

能把limit_num换成S吗

追答

S是什么

追问

就是代表输入的数值

追答

肯定可以啊

追问

printf(" %d",i),%d前面是不是应该有几个空格……

完成了,谢谢啊

温馨提示:答案为网友推荐,仅供参考