函数接口定义:
int prime(int x)
其中x是用户传入的参数,如果x是素数则函数返回1,否则函数返回0。
裁判测试程序样例:
#include <stdio.h>
int prime(int x);
int main()
{
int i,k=0;
for(i=1;i<=100;i++)
if(prime(i)==1)
{printf("%4d",i);
k++;
if(k%10==0) printf("\n");
}
printf("\n%4d\n",k);
return 0;
}
/* 请在这里填写答案 */
输出样例:
2 3 5 7 11 13 17 19 23 29
31 37 41 43 47 53 59 61 67 71
73 79 83 89 97
25
代码长度限制 16 KB
时间限制 400 ms
内存限制 64 MB
int prime(int n)
{
if (n == 2)
return 1;
if (n % 2 == 0)
return 0;
for (int i = 3; i <= sqrt(n); i += 2)//跳过偶数
{
if (n%i == 0)
return 0;
}
return 1;
}
供参考:
#include <stdio.h>
int prime(int x);
int main()
{
int i,k=0;
for(i=1;i<=100;i++)
if(prime(i)==1)
{
printf("%4d",i);
k++;
if(k%10==0) printf("\n");
}
printf("\n%4d\n",k);
return 0;
}
/* 请在这里填写答案 */
int prime(int x)
{
int i;
if (x <= 3 ) return x > 1;
for (i = 2; i * i <= x; i++)
if (x % i == 0) return 0;
return 1;
}
mark