问题
填空题
下面程序由两个源程序文件:t4.h和t4.c组成,程序编译运行的结果是: 【18】 。
t4.h 的源程序为:
#define N 10
#denne f2(x) (x*N)
t4.c 的源程序为:
#include <stdio. h>
#define M 8
#define f(x) ((x)*M)
#include "t4.h"
#main()
int i, j;
i=f(1+1); j=f2(1+1);
printf(%d%d\n",i, j);
答案
参考答案:16 11
解析: 题目中第1条要替换的语句i=f(1+1);展开后是i=((1+1)*M);继续展开为i((1+1*8),结果使i=16。而第2条语句j=f2(1+1)”;展开后为j=(1+1*N);继续展开为j=(1+1*10),结果使j=11。故程序运行的结果是输出16 11。