C语言问题
#include<stdio.h>#definemin(x,y)(x)>(y)?(x):(y)#definet(x,y,r)x*y*r/4main(){inta=1,b=...
#include<stdio.h>
#define min(x,y) (x)>(y)?(x):(y)
#define t(x,y,r) x*y*r/4
main()
{
int a=1,b=3,c=5,s1,s2;
s1=min(a=b,b-a);
s2=t(a++,a*++b,a+b+c);
printf("%d%d",s1,s2);
}
答案为何是113嘞。。。 展开
#define min(x,y) (x)>(y)?(x):(y)
#define t(x,y,r) x*y*r/4
main()
{
int a=1,b=3,c=5,s1,s2;
s1=min(a=b,b-a);
s2=t(a++,a*++b,a+b+c);
printf("%d%d",s1,s2);
}
答案为何是113嘞。。。 展开
4个回答
展开全部
答案错误。
详解:s1=min(a=b,b-a);
虽然a已经初始化,可是当a=b时,a又一次被赋值b,在a=3,则min(3,2) 3>2?条件成立取X值即为3
s2=t(a++,a*++b,a+b+c);
a++的值分为两步:a++=1,a=2
++b的值也分为两步:++b=4,b=4
这两种的值不同,加以区分。
s2=t(1,8,11); s2=22
正确答案:322
详解:s1=min(a=b,b-a);
虽然a已经初始化,可是当a=b时,a又一次被赋值b,在a=3,则min(3,2) 3>2?条件成立取X值即为3
s2=t(a++,a*++b,a+b+c);
a++的值分为两步:a++=1,a=2
++b的值也分为两步:++b=4,b=4
这两种的值不同,加以区分。
s2=t(1,8,11); s2=22
正确答案:322
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
TableDI
2024-07-18 广告
2024-07-18 广告
VLOOKUP是Excel中用于垂直查找的函数,其基本用法包括四个参数:1. 查找值:即在数据表首列中需要搜索的值。2. 数据表:包含查找值的单元格区域或数组。3. 返回值所在列数:指定返回查询区域中第几列的值。4. 查找方式:选择精确匹配...
点击进入详情页
本回答由TableDI提供
展开全部
宏是预编译 所以只是简单置换 这和函数不同
你这题目认真算算即可
如果我算得没错的话 应该是3113
过程和cdma980大致相同
你这题目认真算算即可
如果我算得没错的话 应该是3113
过程和cdma980大致相同
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
s1=min(a=b,b-a); 相当于s1=(3)>(2)?(3):(2) 所以s1=3;
s2=t(a++,a*++b,a+b+c);相当于s2=a++*a*++b*a+b+c/4 所以s2=113
s2=t(a++,a*++b,a+b+c);相当于s2=a++*a*++b*a+b+c/4 所以s2=113
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
因为s1=min(a=b,b-a)即s1=min(3,3-2)=1所以输出3
又s2=113
故结果为3113
又s2=113
故结果为3113
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询