# include <stdio.h>
int x,y;
num()
{int a=15,b=10;
int x,y;
x=a-b;
y=a+b;
return;
}
main()
{int a=7,b=5;
x=a+b;y=a-b;
num();
printf("%d,%d\n",x,y);
}
參考答案:运行结果12,2
因为在main内
int a=7,b=5;
x=a+b;y=a-b;
所以x = 12 , y = 2;
x,y是全局变量,在进行num的时候在num函数内又定义了一个x,y,所以全局变量x,y在num不起作用了,起作用的是num内的x,y
所以
int a=15,b=10;
int x,y;
x=a-b;
y=a+b;
并不改变全局变量 x,y的值
所以结果如此
(一开始看错了,修改了)