问题
单项选择题
以下程序的输出结果是()。
#include<stdio.h>
intm=13;
intfun(intx,inty)
intm=2;
return(x*y-m);
main()
inta=7,b=6;
printf("%d",fun(a,b)/m);
A.1
B.3
C.7
D.10
答案
参考答案:B
解析:
本题考查的是函数调用时的参数的作用域。在函数调用时,当全局变量和局部变量的名称相同时,在局部变量的作用域内,局部变量起作用,因而在fun函数内m的应该等于2,main中的m为13,所以返回值为7×6-2=40,而fun(a,b)/m值为40/13=3。