单选题

【正确答案】 D
【答案解析】[解析]
本题主要考查函数引用调用和全局变量的基本内容。
引用调用是函数传递参数的一种方式,使用引用调用,可以在子函数中对形参所做的更改对主函数中的实参有效,引用就好比给人起一个别名一样,虽然名称不一样,指的还是同一个人。
全局变量的作用域是整个程序,而非某个函数。
在本题中,a是全局变量,其初值是2,然后函数g引用调用函数f,这个时候使形参x也指向全局变量a的存储区域,即x和a是表示同一块存储区域的值,只是名称不一样而已,那么在函数f中,首先将该存储区域的值加1变成3,然后又将该区域的值加2变成5,最后执行5*5=25返回。因此函数g的返回值为25,而这个时候变量a所表示的存储区域的值为5,因此变量a的值为5。