问题 单项选择题

以下程序运行后的输出结果是 #include<stdio.h> void fun(int *a, int *b) { int *c;  c=a; a=b; b=c; } main() { int x=3, y-5, *p=&x, *q=&y;  fun(p, q); printf("%d, %d,", *p, *q);  fun(&x, &y); printf("%d, %d\n", *p, *q); }

A.3,5,5,3

B.3,5,3,5

C.5,3,3,5

D.5,3,5,3

答案

参考答案:B

解析: fun函数功能是改变指针变量a和b的指向,并不能改变a和b所指向存储空间的值。因此,第一个printf语句的输出结果为“3,5”。第二个printf语句的输出结果仍为“3,5”。

计算题
单项选择题