单选题
有以下程序:
#include <stdio.h>
void fun2(char a,charB)
{
pfinff("%c%c",a,b);
}
char a="A", b="B";
void fun1()
{
a="C";
b="D";
}
main( )
{
fun1();
printf("%c%c",a,b);
fun2("E","F");
}
程序的运行结果是______。
【正确答案】
B
【答案解析】[解析] 本题考查的是变量的作用范围。如果在同一个源文件中,外部变量与局部变量同名,则在局部变量的作用范围内,外部变量被“屏蔽”,即不起作用。本题中,在fun1()和main()函数内访问的是全局变量a和b,在fun2()函数中访问的是形参变量a和b。所以,main()函数中的printf()函数输出的是在fun1()函数中被改变的全局变量a和b的"值C D,而fun2()函数中输出的是传递给它的实参值E F。因此B选项正确。