执行以下程序后,y的值是( )
main()
{ int a[]={2,4,6,8,10};
int y=1,x,p;
p=&a[1];
for(x=0;x<3;x++)
y+=(p+x);
printf(“%d\n”,y);
}
y+=(p+x)是否漏了一个*号?
p=&a[1]; //p指向 4这个元素
//x=0时,y= y+ *(p+0) = 1+ 4=5
//x=1时,y=y+ *(p+1)=5+6=11
//x=2时,y =y+ *(P+2)=11 + 8=19
所以y的值就是19
我直接运行的答案咋是:19266064
看代码是:1+4+6+8