作业帮 > 数学 > 作业

1、设有说明,int a=7;double x=2.5,y=4.7;",则表达式x+a%3*(int)(x+y)%2/4

来源:学生作业帮 编辑:大师作文网作业帮 分类:数学作业 时间:2024/11/11 17:57:00
1、设有说明,int a=7;double x=2.5,y=4.7;",则表达式x+a%3*(int)(x+y)%2/4的值为———
2、设 int i=32,j=1,k=3;则表达式 i||(j-k)&&i&&!(k-3||i*k) 的值为 ___
1、设有说明,int a=7;double x=2.5,y=4.7;
a%3*(int)(x+y)%2/4,这是从左到右执行,但先执行(int)x+y=7,
则a%3*(int)(x+y)%2/4=a%3*7%2/4;
然后依次从左到右执行,a%3=1,1*7=7,7%2=1,1/4=0;
最后x+0=x=2.5
!i||(j-k)&&i&&!(k-3||i*k) 也是从左往右看,转化为0假,1真;0||1&&1&&!(0||1),非零都为真,即为1;
从左往右推,0||1为真1,1&&1为真1,(0||1)为真1,!1为假0,1&&0为假0;
所以值为0.
再问: 为什么“非零都为真,即为1”,是规定的吗?
再答: 对,规定的,非零为真,如果要用数值表示,就是1