题目描述
设计一个程序,输出所有小于等于n(n为一个大于2的正整数)的素数。输入包含多组测试数据。
要求:(1)每行输出10个素数。
(2)尽量采用较优的算法。
输入
50
输出
2 3 5 7 11 13 17 19 23 29
31 37 41 43 47
样例输入
50
样例输出
2 3 5 7 11 13 17 19 23 29
31 37 41 43 47
参考代码
#include <stdio.h>
#include <stdlib.h>
int main()
{
int n;
while(scanf("%d",&n)!=EOF)
{
int i;
int j,s=0;
for (i=2;i<=n;i++)
{
for (j=2;j<=i/2;j++)
{
if(i%j==0)
break;
}
if(j==i/2+1)
{
printf("%5d",i);
s++;
}
if(s==10)
{
printf("n");
s=0;
}
}
printf("n");
}
return 0;
}
解析
暂无