A-A+

下列程序的输出结果是______。 main() { int a=2 b=4 c=6; in

2022-08-12 18:31:46 问答库 阅读 197 次

问题详情

下列程序的输出结果是______。 main() { int a=2,b=4,c=6; int*p1=&a,*p2=&b,*p; *(p=&C) =*p1*(*p2); printf("%dn",c); }请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:8
本程序定义了3个指针变量p1、p2、p,并且将a、b的地址分别赋给p1、p2,则*p1=a=2,*p2=b=4,所以表达式*p1*(*p2)的值是8。在赋值语句的左边是*(p=&c),即使指针p指向了变量c,因而*(p)代表了c的存储单元,赋值语句“*(p=&c)=*p1*(*p2);”是把整数8赋给了变量c。

考点:程序