#include<stdio.h>
int fun(int m)
{
********program***********
************end***************
}
main()
{
int n;
printf("Please enter n:");
scanf("%d",&n);
if(fun(n)==1)
{
printf("YES\n");
printf("%d",n);
}
else
printf("N0!");
}
思碰纯路如下:
1、求2-n之间的所有素数
2、创建一个数组a[n+2],笑盯咐其下表为2...n+1
3、数组的功能是记录那些数十素数,其下标表则喊示素数,元素初始化时全为1,表示全部数假设都是素数
4、从2开始往后访问数组的每一个元素,如果这个数十素数就输出,否则往后遍历
5、遍历的同时如果这个数i是素数,则进一步往后将这个数的倍数2*i,3*i,....将这些数都标记为0表示不是素数 6、执行完毕将输出所有素数了
int i,k;
k=sqrt(x);
for(i=2;i<=k;i++)
if(x%i==0) break;
if(i>k) return 1;//如果是素数返回1,如空袜培果斗唯非素数好卜返回0
else
return 0;