两道简单的C语言 赋值计算题
1)求表达式的值x+a%3*(int)(x+y)%2/4设x=2.5,a=7,y=4.7请说一下运算步骤2)设原来a=12,求aa/=a+a“a%3*7%2/4,从左往右...
1)求表达式的值 x+a%3*(int)(x+y)%2/4 设x=2.5,a=7,y=4.7 请说一下运算步骤 2)设原来a=12,求a a/=a+a “a%3*7%2/4,从左往右计算,得0.” 这步为什么呢? a%3.....1 1*7.....7 7%2.....1 1/4.....0.75 哪错了? 能说的详细些吗? 还有 “再算a/=24,即a=a/24” 那样不是0.5吗?
展开
2个回答
展开全部
第一题
先算(int)(x+y),强制类型转换,结果为7,再算a%3*7%2/4,从左往右计算,得0.最后x+0得2.5.记住,因为你7是整型,即int,所以7%2得1也是整型.1/4结果为整型,所以是0.
第二题
先算a+a,右边得24.再算a/=24,即a=a/24,得0.
a如果你开始定义的是int,即整型,就是0.如果定义成float,即浮点型,答案就是0.5
先算(int)(x+y),强制类型转换,结果为7,再算a%3*7%2/4,从左往右计算,得0.最后x+0得2.5.记住,因为你7是整型,即int,所以7%2得1也是整型.1/4结果为整型,所以是0.
第二题
先算a+a,右边得24.再算a/=24,即a=a/24,得0.
a如果你开始定义的是int,即整型,就是0.如果定义成float,即浮点型,答案就是0.5
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询