C语言#define P 1+2 void main() { int a=2,b=1; printf("%d\n",3*P*(a+b)); } 为什么答案是6 标题说错了。问题是为什么答案是9?求解答... 标题说错了。问题是为什么答案是9?求解答 展开 我来答 可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。 c语言 #define printf void int 搜索资料 1个回答 #合辑# 机票是越早买越便宜吗? 买卖江湖 2016-06-11 · TA获得超过132个赞 知道小有建树答主 回答量:116 采纳率:0% 帮助的人:43.6万 我也去答题访问个人页 关注 展开全部 #define 是宏定义,是替换,不做计算,也不做表达式求解。所以替换后就变成3*1+2*(2+1)=3+2*3=9所以在使用#define时要注意括号 追问 能否再帮我说下这道题答案为什么是A?谢谢了 追答 因为a b都是整型值,所以a/b所得的数会默认去掉小数点后的数变成整型值而整型值与浮点数相加,结果是浮点数。所以a/b+c=3+3.5=6.5 本回答由提问者推荐 已赞过 已踩过< 你对这个回答的评价是? 评论 收起 推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询 其他类似问题 2011-08-14 请帮我看看这个c++题目#define A(n) 2*n+1,则表达式A(2+3)的值是【1】 10 更多类似问题 > 为你推荐: