15、下列程序执行后的输出结果是:( ) #define MA(x) x*(x-1) main() { int a = 1, b = 2; printf("%d \n", MA(1 + a + b)); } A. 6 B. 8 C. 10 D. 12
时间: 2024-03-31 08:32:39 浏览: 48
C. 10。解释如下:根据宏定义,MA(1 + a + b) 将被替换为 (1 + a + b) * (1 + a + b - 1),即 (1 + a + b) * (a + b)。因此,printf 语句将被替换为 printf("%d \n", (1 + a + b) * (a + b))。当 a = 1,b = 2 时,(1 + a + b) * (a + b) = 10,因此输出结果为 10。因此,答案为 C。
阅读全文