单选题 有以下程序:
#include <stdio.h>
#define S(x)4*(x)*x+1
main()
{int k=5,j=2;
printf("%d/n",S(k+j));
}
程序运行后的输出结果是
  • A. 197
  • B. 143
  • C. 33
  • D. 28
【正确答案】 B
【答案解析】[解析] 宏定义又称为宏代换,格式为“#define标识符字符串”,其中的标识符就是所谓的符号常量,也称为“宏名”,宏的预处理工作也叫做宏展开,即将宏名替换为字符串。本题中把S(k+j)替换成4*(k+j)*k+j+1,计算结果为143。