问题 单项选择题

以下程序的输出结果是( )。
#include<stdio.h>
int m=13;
int fun(int x,int y)
int m=2;
return(x*y-m);

main()
int a=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。

填空题
问答题 简答题