int x=5,y=7; void swap() { int z; z=x; x=y; y=z; } int main() { int x=3,y=8; swap(); printf("%d,%d\n", x, y); return 0; }
5,7
7,5
3,8
8,3
在这段代码中,swap函数试图交换两个全局变量x和y的值。然而,由于swap函数中的x和y是局部变量,它们与全局变量x和y是不同的实体。因此,swap函数内部的交换不会影响全局变量的值。
在main函数中,x和y被重新定义为局部变量,并且分别初始化为 3 和 8。调用swap函数后,由于swap函数中的交换不会影响全局变量,所以main函数中的局部变量x和y的值不会改变。
这道题你会答吗?花几分钟告诉大家答案吧!
扫描二维码,关注牛客网
下载牛客APP,随时随地刷题