用指针方法,编写一个函数,求一维整型数组中所有偶数元素之和sum!(急需大神赐教!!!)

#include<stdio.h>
int add(int *p)
{
int sum=0;
while(p!=NULL)
{sum+=(*p);
p=p+2;}
return (sum);
}
void main()
{
int a[20],i;
int *p;
int sum=0;
*p=a[0];
printf("输入10个数字:\n");
for(i=0;i<10;i++)
scanf("%c",(p+i));
sum=add(p);
printf("%d\n",sum);

}
本人菜鸟一枚,看不出哪里不对

#include<stdio.h>
int add(int *p, int num)
{
int sum=0;
int iter = 0;
p ++;
while(iter < num)
{sum+=(*p);
p=p+2;
iter += 2;}
return (sum);
}
void main()
{
int a[20],i;
int *p = NULL;
int sum=0;
p=a;
printf("输入10个数字:\n");
for(i=0;i<10;i++)
scanf("%d",(p+i));
sum=add(p, 10);
printf("%d\n",sum);

}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-05-23
#include<stdio.h>
int add(int *p)
{
int i,sum=0;

for(i=0;i<10;)
{ sum+=p[i];
i=i+2;}
return (sum);
}
void main()
{
int a[20],i;
int *p;
int sum=0;
p=a;
printf("输入10个数字:\n");
for(i=0;i<10;i++)
scanf("%d",(p+i));
sum=add(p);
printf("%d\n",sum);

}