我想问一下怎么样去定位一个处于特定位置的的数组,如位于位置位于某个特定函数值的数组元素,以下是我的代码,ncf为我自己定义的一个函数,这样子为什么不行呢?有没有什么其他的替代方案?
*(p + ncf(x, w)) = 0;
#include<stdio.h>
int ncf(int x, int y)
{
int am = x;
for (int i = 1;i < y;i++)
am *= x;
return am;
}
int shaixuanfa(int x, int* p)
{
for(int w=1;w<10;w++)
{
if (ncf(x, w) <= 100)
*(p + ncf(x, w)) = 0;
}
return 0;
}
int main()
{
int a[101] = {};
int* p = a+2;
for (int i = 2;i < 101;i++)
a[i] = i;
for(int i=2;p<=a+100;i++,p++)
{
shaixuanfa(i, p);
if (a[i] == 0)
continue;
}
for (int i = 2;i <= 100;i++)
{
if (a[i] != 0)
printf("%d\t", i);
}
return 0;
}