C语言实验——素数
时间: 1ms 内存:64M
描述:
输出100->200之间的素数的个数,以及所有的素数。
输入:
无
输出:
100->200之间的素数的个数,以及所有的素数。
示例输入:
示例输出:
21
101 103 ... 197 199
提示:
参考答案(内存最优[744]):
#include <stdio.h>
int main()
{ int i,n,j=1;
int prime;
for(n=100;n<199;n++)
{prime=1;
for(i=2;i<=n-1;i++)
if(n%i==0)
{prime=0;
break;}
if(prime==1)
j=j+1;
}
printf("%d\n",j);
for(n=100;n<199;n++)
{prime=1;
for(i=2;i<=n-1;i++)
if(n%i==0)
{prime=0;
break;}
if(prime==1)
{
printf("%d",n);
putchar(' ');
}
}
printf("%s","199");
return 0;
}
参考答案(时间最优[0]):
#include"stdio.h"
#include"math.h"
int main()
{
int m,i,k,n=0,a;
for(m=101;m<=200;m=m+2)
{
k=sqrt(m);
for(i=2;i<=k;i++)
if(m%i==0)
break;
if(i>=k+1)
n++;
}
printf("%d\n",n);
for(m=101;m<=200;m=m+2)
{
k=sqrt(m);
for(i=2;i<=k;i++)
if(m%i==0)
break;
if(i>=k+1)
printf("%d ",m);
}
return 0;
}
题目和答案均来自于互联网,仅供参考,如有问题请联系管理员修改或删除。