向大神求教一个代码运行后与本人期望不符的小问题
本人疑惑代码如下:#include<stdio.h>
int main()
{
int n,i,t;
int a[10000]= {0};
for(i=2; i<10000; i++)//建立10000以内的素数表
if(!a[i])
for(t=i+i; t<10000; t+=i)
if(!a[t])
a[t]=1;
for(i=1;i<10000;i++)//输出10000以内的素数
if(a[i]==0)
printf("%d\n",i);
return 0;
}
为什么运行后输出不是从2开始,反而从很大的数开始输出呢?求指点迷津