#include<stdio.h> void f(int y,int *x) { y=y+*x; *x=*x+y; } main() { int x=2,y=4; f(y,&x);

2024-12-01 04:10:34
推荐回答(2个)
回答1:

X是地址传递,子函数会修改X的内容;而Y是按值传递,子函数不会修改Y的值。结果自然是X=8.Y=4.要是还不懂,翻书去。

回答2:

y=y+*x=4+2=6;*x=*x+y=6+2=8
所以输出x等于8,y不变输出4