执行语句k=5|3;后,变量k的当前值是( ).
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/22 21:16:29
![执行语句k=5|3;后,变量k的当前值是( ).](/uploads/image/f/4829620-4-0.jpg?t=%E6%89%A7%E8%A1%8C%E8%AF%AD%E5%8F%A5k%3D5%7C3%3B%E5%90%8E%2C%E5%8F%98%E9%87%8Fk%E7%9A%84%E5%BD%93%E5%89%8D%E5%80%BC%E6%98%AF%28+%29.)
解释下:x%y是整除取余数,所以switch(x%y)相当于switch(6)然后再找6得K=0但是后面没有break不能跳出,继续后面的语句直到default前面没有改变xy的值,所以直接后最后一条
假定w,x,y,z,m均为整型变量,且w=1,x=2,y=3,z=4,则执行语句:m=(w
初值k=8然后判断k的值显然k不等于9,10,11则执行default,则k为9,再判断k得k为10,再判断k,得k为11,再判断k,得k为12,这时退出.输出:12再问:可答案怎么会是9?你确定吗?
5二进制是101,3二进制是11,位运算后是111,是7再问:大哥你算错了吧111是7~(o_o)~再答:额?我写的不是7?再问:一开始写了8.。。再答:好吧,被你发现了
2%5=2%是取余操作,也就是2除以5以后得到的余数.所以,执行case2的操作,也就是x*y=2*5=10所以k=10.
应该是s+=k,此程序求的是1+4+7+10+···+19的等差数列所以求的为70
一般来说他们的区别在于混合表达式中运算符的处理顺序.k++是先处理其他运算,然后k再自加;而++k则是先处理k自加运算,再处理其他表达式运算;如果只是单纯的表达式k++;或者是++k;这两个表达式的结
答案是正确的逻辑运算符的结合方向是从左到右当执行k=x--时逻辑||的左值为1,不管||后面的是0是1,此逻辑表达式的值都为1都不执行||右边的表达式了,所以y还是1
果断选C6%10=6k=6/10=0.6因为intk属整形故k=0.
结果为4.500000这是VS2010的结果这是因为m/2在计算时m为整型,所以3.5会被计为3,之后和n*x/y相加.由于n*x/y中含有整型及浮点型,所以结果会被转化为浮点型,即1.500000与
k=1;这题要注意运算符优先级的问题,这点和我们数学上认识的不一样.k=1/3*k++;“/"和"*"的优先级是一样的,所以先算1/3=0;因为是K是int,0.333取整就是0了.0*k=0;最后再
C//没有压力//后面的数据都是在它前面的一个变量的基础上+1.懂了吧?追问:还是不太明白,可以说的详细些么.最佳给你了
由于都是同一个++k我标注出①②③,楼主说的如果跟我表达的一致就是正确的(我怕误解原话)for(k=3;++k①
c)2因为在switch语句中如果case后不跟break,那么只要成立就会将之后的所有语句都执行
B.1如x++是先用了,再加一++x是先加一,再用第一步为while(3