已有宏定义#define P(x)x*x-2;设int x=1,y=3;且a=P(x+2);b=P(y);则a的值为--

问题描述:

已有宏定义#define P(x)x*x-2;设int x=1,y=3;且a=P(x+2);b=P(y);则a的值为__;b的值为__.求详解.
1个回答 分类:综合 2014-10-21

问题解答:

我来补答
宏定义#define P(x) x*x-2
就是把P(x)替换成 x*x-2
相当于数学上P(x)=x*x-2
所以a = P(x+2) 为a= (x+2)*(x+2)-2
b = P(y)为b= y*y-2
int x=1,y=3
代入x=1,y=3
a= (x+2)*(x+2)-2=7
b= y*y-2=7
还有问题吗
再问: 但是答案上写的是a=3,b=7,不知道怎么个情况啊,所以我想知道详解,是不是答案错了啊?
再答: P(x)x*x-2
那个x*x-2改为 (x)*(x)-2
否则x+2代入就变成 x+2*x+2-2 = 3x
#define P(x) x*x-2仅仅是一个替换的作用的
 
 
展开全文阅读
剩余:2000