一道C语言题目,请给出解题过程
#defineSQR(x)x*xvoidmain(){ints=8,a=2,b=3;s=SQR(a+b)*4;printf("s=%d\n",s);}输出结果是s=20...
#define SQR(x) x*x
void main()
{
int s=8,a=2,b=3;
s=SQR(a+b)*4;
printf("s=%d\n",s);
}
输出结果是s=20 展开
void main()
{
int s=8,a=2,b=3;
s=SQR(a+b)*4;
printf("s=%d\n",s);
}
输出结果是s=20 展开
6个回答
展开全部
此题只需做如下修改就可以得到不一样的答案:
#include <stdio.h>
//#define SQR(x) x*x
int SQR(int x)
{
return x*x;
}
int main()
{
int s=8,a=2,b=3;
s=SQR(a+b)*4;
printf("s=%d\n",s);
return 0;
}
//#define SQR(x) x*x 没有返回值,只有函数的形而没有函数的实,所以答案是20,相当的准确,LZ还不错啊,这个题都研究出来了,很容易出错的哦!
#include <stdio.h>
//#define SQR(x) x*x
int SQR(int x)
{
return x*x;
}
int main()
{
int s=8,a=2,b=3;
s=SQR(a+b)*4;
printf("s=%d\n",s);
return 0;
}
//#define SQR(x) x*x 没有返回值,只有函数的形而没有函数的实,所以答案是20,相当的准确,LZ还不错啊,这个题都研究出来了,很容易出错的哦!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
楼上你错的
以来s=SQR(a+b)*4就相当与
s=a+b*a+b*4=2+3*2+3*4=20
只是完全的字符代替
以来s=SQR(a+b)*4就相当与
s=a+b*a+b*4=2+3*2+3*4=20
只是完全的字符代替
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
int a[4]={0,4,5,13}, *p;
p=&a[2];
printf("*p++=%d\n",*p++);//*p=4.而*的级别高于++.所以是先输出*p的内容在++.
p=&a[2];
printf("*p++=%d\n",*p++);//*p=4.而*的级别高于++.所以是先输出*p的内容在++.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我完全同意xkfrxh 的做法 这种才是对的啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
xkfrxh说得对,
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询