求素数:为什么后面会有一串奇怪的数字?
#include <stdio.h>
int main()
{
int i,j,k=0,a[100];
for(i=100;i<=200;i++)
{
for(j=2;j<i;j++)
{
if(i%j==0)
break;
if(j==i-1)
a[k++]=i;
}
}
for(i=0;i<=k;i++)
printf("%5d",a[i]);
return 0;
}
这个不奇怪的,这个是个随机数,0~<=k要有k+1个了,而你只计算了k个,第k+1个当然是不对的
正确的改
for(i=0;i<=k;i++)
为
for(i=0;i<k;i++)
热门标签: