#include<stdio.h>
#define MAX 100
int fun(int lim, int aa[])
{
int i, j = 0, s = 0, n = 0;
for (i = 2; i <lim; i++)
{
for (j = 2; j <= i; j++)
{
if (i % j == 0)break;
}
if (j > i-1)
{
s++;
aa[n] = i;
}
}
return s;
}
int main()
{
int aa[MAX];
int lim, s;
scanf("%d", &lim);
s = fun(lim, aa);
printf("%d", s);
printf("\n");
return 0;
}
n是数组x下标,取数组n下标对应的位置的变量,赋值或者取值
这个代码是干什么的
n 是数组的下标,这里应该是 aa[n++] = i; ,也可以少用一个变量,修改如下,供参考:
int fun(int lim, int aa[])
{
int i, j = 0, s = 0, n = 0;
for (i = 2; i <lim; i++)
{
for (j = 2; j <= i; j++)
{
if (i % j == 0)break;
}
if (j > i-1)
{
//s++;
aa[s++] = i;//aa[n] = i;
}
}
return s;
}