C语言程序设计题:用筛选法求100以内的素数。有答案。求看不懂的地方

答案是:
# include<stdio.h>
# include<math.h>
void main()
{
int a[101],i,j,n=0;
for(i=1;i<=100;i++)
a[i]=i;
for(j=2;j<=100;j++)
{
for(i=1;i<=100;i++)
{
if(a[i]%j==0)
a[i]=0;
}
}
for(i=1;i<=100;i++)
{
if(a[i]!=0)
{printf("%d",a[i]);
n++;}
if(n%5==0)
printf("\n");
}
然后我想问for(j=2;j<=100;j++)是什么意思。j是什么

方法一: 说明:从1至100放入数组,将非素数置为0; n用来控制输出,每行输出五个; # include # include void main() { int a[101],i,j,n=0; for(i=1;i<=100;i++) a[i]=i; for(i=1;i<=100;i++) { for(j=2;j<=sqrt(i);j++) { if(a[i]%j==0) a[i]=0; } } for(i=1;i<=100;i++) { if(a[i]!=0) {printf("%d ",a[i]); n++;} if(n%5==0) printf("\n"); } } 方法二: 说明:此方法是将2至100间各数的倍数置为0,则所剩的自然就是素数了; # include # include void main() { int a[101],i,j,n=0; for(i=1;i<=100;i++) a[i]=i; for(j=2;j<=100;j++) { for(i=1;i<=100;i++) { if(a[i]%j==0) a[i]=0; } } for(i=1;i<=100;i++) { if(a[i]!=0) {printf("%d",a[i]); n++;} if(n%5==0) printf("\n"); } 方法三: 说明:用goto语句实现; # include # include void main() { int i,j,k; for(i=1;i<=100;) { for(j=2;j<=sqrt(i);j++) { if(i%j==0) goto ab; } printf("%d ",i); n++; if(n%5==0) printf("\n"); ab: i++; } } 方法四: 说明:用break;语句实现; # include void main() { int i,j,k; for(i=1;i<=100;i++) { for(j=2;jsqrt(i)) {printf("%d ",i); n++} if(n%5==0) printf("\n"); } }追问

j是什么

温馨提示:答案为网友推荐,仅供参考
相似回答