#define SQR(X) X*X #include void main(){ int a=16,k=2,b=4,m=
来源:学生作业帮 编辑:搜狗做题网作业帮 分类:综合作业 时间:2024/05/09 13:13:37
#define SQR(X) X*X #include void main(){ int a=16,k=2,b=4,m=1 ; a/=SQR(k+m)/SQR(k+m); pri
#define SQR(X) X*X
#include
void main(){
int a=16,k=2,b=4,m=1 ;
a/=SQR(k+m)/SQR(k+m);
printf("%d\n",a);
}
为什么?
#define SQR(X) X*X
#include
void main(){
int a=16,k=2,b=4,m=1 ;
a/=SQR(k+m)/SQR(k+m);
printf("%d\n",a);
}
为什么?
宏定义有替代的意思.
SQR(k+m)/SQR(k+m)展开后,变成k+m*k+m/k+m*k+m,显然,这不是你想要的结果.
正确的宏定义是:
#define SQR(x) (x)*(x)
再问: 不,这就是个选择题,它就是故意没有加括号的............答案等于多少啊??????
再答: 你按我展开给你的等式算算就知道.
再问: 了解,展开的时候弄错了,,,,,,,,,,,,呵呵.......谢谢啊 采纳了!!!
SQR(k+m)/SQR(k+m)展开后,变成k+m*k+m/k+m*k+m,显然,这不是你想要的结果.
正确的宏定义是:
#define SQR(x) (x)*(x)
再问: 不,这就是个选择题,它就是故意没有加括号的............答案等于多少啊??????
再答: 你按我展开给你的等式算算就知道.
再问: 了解,展开的时候弄错了,,,,,,,,,,,,呵呵.......谢谢啊 采纳了!!!
#define SQR(X) X*X #include void main(){ int a=16,k=2,b=4,m=
#define SQR(x) x*x void main() { int a=10,k=2,m=1; a/=SQR(k+
#include #define SQR(x)x*x main() { int a,k=3; a=++SQR(k+1);
#include #define S(x) x*x void main() { int a,k=3,m=1; a=S(k
#define SQR(X) X*X main() { int a=16,k=2,m=1; a/=SQR(k+m)/SQ
#include #define MA(x) x*(x-1) void main() { int a=1,b=2; pr
#include"stdio.h" #define MA(x) x*(x-1) void main() { int a=
3.设有以下程序:、#include #define S(X) X*Xvoid main(void){int k=2;c
#include #define A 2 #define B(x) x*(A+2) void main() { int
以下程序的输出结果是 2为什么 #define SQR(X) X*X main() { int a=16,k=2,m=1
#include Int main(void ) { int a = 5,b = 4,x,y; x = 2 * a++
#include #define S(x) x*x main() {int a=9,k=3,m=2; a/=S(k+m)