问题 单项选择题

以下程序的输出结果是()。

#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。

单项选择题
问答题 简答题