A-A+
有以下程序: #include main() {int m=1 n=2 *
问题详情
有以下程序: #include<stdio.h> main() {int m=1,n=2,*p=&m,*q=&n,*r; r=P;P=q;q=r; printf("%d,%d,%d,%dn",m,n,*P,*q); } 程序运行后的输出结果是()。
A.1,2,1,2
B.1,2,2,1
C.2,1,2,1
D.2,1,1,2请帮忙给出正确答案和分析,谢谢!
参考答案
正确答案:B
本题进行了交换,输出的4个值,前两个为m和n的值,*P取m的值,*q取n的值,分别为l和2;而“r=P;p=q;q=r;”语句是进行P和q的交换。所以本题输出结果为1,2,2,1。