单选题
以下程序的输出结果是______。
main()
{ int a=7, b=8, *p, *q, *r;
p=&a; q=&b;
r=p; p=q; q=r;
printf("%d, %d, %d, %d/n", *p, *q, a, b);
}
A、
8,7,8,7
B、
7,8,7,8
C、
8,7,7,8
D、
7,8,8,7
【正确答案】
C
【答案解析】
[解析] 在“r=p;p=q;q=r;”三个语句是表示p与q交换,经过交换后p指向b的地址,q指向a的地址,因此最后输出为8,7,7,8,故选择C选项。
提交答案
关闭