有以下程序:include<stdio.h>main(){int m=1 n=2 *p=m *q=n *r; r=P;P=q;q=r;
程序,
已帮助 人
有以下程序:
include<stdio.h>
main()
{int m=1,n=2,*p=&m,*q=&n,*r;
r=P;P=q;q=r;
printf("%d,%d,%d,%d\n",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。
