若有以下宏定义:#define N 3 #define Y(n) ((N+1)*n) ,执行语句“z=2*(N+Y(5+

若有以下宏定义:#define N 3 #define Y(n) ((N+1)*n) ,执行语句“z=2*(N+Y(5+1));”后,Z的值是?
答案是48..为什么?
永远女主角 1年前 已收到1个回答 举报

xxxllllll 花朵

共回答了21个问题采纳率:81% 举报

Y(5+1) = ((3+1)*5+1)
z = 2*(3+((3+1)*5+1)) = 2*(3+21) = 48
陷阱在于Y(n)的定义,若改为:
#define Y(n) ((N+1)*(n))
则z的值为54.

1年前

10
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 16 q. 2.396 s. - webmaster@yulucn.com