有以下程序: #include<stdio.h> main() { int a=1,b=3,c=5; int*p1=&a,*p2=&b,*p=&c; *p=*p1*(*p2); printf("%d\n",c); } 程序执行后的输出结果是( )。

admin2020-10-26  19

问题 有以下程序:
#include<stdio.h>
main()
{
int a=1,b=3,c=5;
int*p1=&a,*p2=&b,*p=&c;
*p=*p1*(*p2);
printf("%d\n",c);
}
程序执行后的输出结果是(    )。

选项 A、1
B、2
C、3
D、4

答案C

解析 该程序中int*p1=&a,*p2=&b,*p=&c;指定义三个指针变量,并赋值,即使p1指向a;p2指向b;p指向c。*p=*p1*(*p2);该条语句是给p所指的存储单元c赋值,就是p1所指的存储单元的值,即a的值,与p2所指的存储单元b的值相乘,也就是c=a*b,等价于c=1*3=3;因此C选项正确。
转载请注明原文地址:https://jikaoti.com/ti/pGD0FFFM
0

最新回复(0)