3.有以下程序执行后输出结果是 .D #define f(x) x*x m
问题描述:
3.有以下程序执行后输出结果是 .D #define f(x) x*x m
3.有以下程序执行后输出结果是 .D
#define f(x) x*x
main( )
{ int i;
i=f(3+3)/f(2+2);
printf("%d\n",i); }
A)2 B)16 C)9 D)19
这题为什么选D 求详解
答
结果为D
f(3+3)被替换为 3+3*3+3,f(2+2)被替换为2+2*2+2
因此,f(3+3)/f(2+2)最终会被替换为3+3*3+3/2+2*2+2,它的计算结果为1936/16 =19������36/16ע�⣺��3+3*3+3/2+2*2+2����(3+3*3+3)/(2+2*2+2)�ð��ҵ��������ȼ�������ѧ���������лл���Ǻǣ�����Dz��ɰ��Ļظ�����ףѧϰ��