执行以下程序段,输出的结果为( )执行以下程序段,输出的结果为( ) main() { int a[2][3]={{3,2,7},{4,8,6}}; int *p,m; p=&a[0][0]; m=(*p)*(*(p+2))*(*(p+4)); /*这里是怎么计算的?*/printf(“m=%d”,m);}

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/04 22:11:29
执行以下程序段,输出的结果为( )执行以下程序段,输出的结果为( ) main() { int a[2][3]={{3,2,7},{4,8,6}}; int *p,m; p=&a[0][0]; m=(*p)*(*(p+2))*(*(p+4)); /*这里是怎么计算的?*/printf(“m=%d”,m);}

执行以下程序段,输出的结果为( )执行以下程序段,输出的结果为( ) main() { int a[2][3]={{3,2,7},{4,8,6}}; int *p,m; p=&a[0][0]; m=(*p)*(*(p+2))*(*(p+4)); /*这里是怎么计算的?*/printf(“m=%d”,m);}
执行以下程序段,输出的结果为( )
执行以下程序段,输出的结果为( )
main()
{ int a[2][3]={{3,2,7},{4,8,6}};
int *p,m;
p=&a[0][0];
m=(*p)*(*(p+2))*(*(p+4)); /*这里是怎么计算的?*/
printf(“m=%d”,m);}

执行以下程序段,输出的结果为( )执行以下程序段,输出的结果为( ) main() { int a[2][3]={{3,2,7},{4,8,6}}; int *p,m; p=&a[0][0]; m=(*p)*(*(p+2))*(*(p+4)); /*这里是怎么计算的?*/printf(“m=%d”,m);}
84
m=(*p)*(*(p+2))*(*(p+4));
首先(*p)指p指针指向内存位置的int型变量的值,即a[0][0],因此(*p)=3
然后看(*(p+2))指的是p所指位置之后第二个元素,即a[0][2],因此(*(p+2))=7
最后(*(p+4))=a[1][0]=4,因此m=3*7*4=84