指针做函数参数): 编写函数void fun(int x, int *pp, int *n),
它的功能是:求出x的偶数因子,并按从小到大的顺序存放在pp所指的数组中,
这些因子的个数通过形参n返回。
如,若x中的值为24,则有6个数符合要求,
它们是2、4、6、8、12、24。
主函数中输入一个小于等于1000的正整数
,调用fun函数之后按顺序输出该正整数的所有偶数因子
输入输出形式如: Input number:
512 2 4 8 16 32 64 128 256 512
最后以回车结束。
#include<stdio.h>
void fun(int x, int pp[], int *n)
{
int i, j = 0;
for (i = 2; i <= x; i = i + 2) //1
{
if (x % i == 0) //1
{
pp[j++] = i; //2
}
}
*n = j; //1
}
int main()
{
int x, aa[1000], n, i;
printf("Input number:"); //1
scanf("%d", &x);
fun(x, aa, &n); //1
for (i = 0; i < n; i++) //1
printf(" %d", aa[i]); //1
printf("\n"); //1
return 0;
}