有以下程序 #include voidfun2(chara,charB) { printf("%c%c",a,b); } chara=’A’,b=’B’; voidfun1() { a=’C’; b=’D’; } main() { fun1(); prin

admin2019-04-24  47

问题 有以下程序
#include
voidfun2(chara,charB)
{
printf("%c%c",a,b);
}
chara=’A’,b=’B’;
voidfun1()
{
a=’C’;
b=’D’;
}
main()
{
fun1();
printf("%c%c",a,b);
fun2(’E’,’F’);
}
程序的运行结果是

选项 A、A B E F
B、C D E F
C、A B C D
D、C D A B

答案B

解析 本题考察的是变量的作用范围。如果在同一个源文件中,外部变量与局部变量同名,则在局部变量的作用范围内,外部变量被"屏蔽",即不起作用。本题中,在fun1()和main()函数内访问的是全局变量a和b,在fun2()函数中访问的是形参变量a和b。所以,main()函数中的printf()函数输出的是在fun1()函数中被改变的全局变量a和b的值C D,而fun2()函数中输出的是传递给它的实参值E F。因此B选项正确。
转载请注明原文地址:https://jikaoti.com/ti/6yf0FFFM
0

最新回复(0)