当把以下4个表达式用作iif语句的控制表达式时,有一个选项与其他3个选项含义不同,这个选项是()

问题描述:

当把以下4个表达式用作iif语句的控制表达式时,有一个选项与其他3个选项含义不同,这个选项是()
A K%2 B K%2==1 C(K%2)!=0 D!K%2==1,请详细解释下,谢谢!

答案是A吧
K模2是K除以2取余数
如果放到if里面其实貌似没什么意义
if()括弧里面的数只要大于0就为真
其他的选项都有判断符号如==等于 !=不等于标准答案是D,我最初的答案也是选A。现在我的理解是:if(k%2)虽然没有“=”,但在括号里应该包含了真假的含义,B C很明显 是一样的,至于D(!K)为0------!K%2==1为0%2为假。也就是说无论K取任何数,都是假,没有起到真假判断作用。不知这样的理解正确不?D的话 根据预算符优先级 先做!K 如果K大于0 运算结果就为0吧如果K小于等于0 运算结果就为1吧然后做取模0%2得0吧1%2得1吧然后做判断O(∩_∩)O哈哈~ 是不是这样 我也糊涂了前面我弄错了,0%2为2,所以答案D永远为真,没有真假判断作用,A B C都可能为真为假,只有D!K无论K取任何数,都为0 0%2为2 为真。这个我的思考之后的理解,不知道准确不?因此为了本着不误导了的缘故答案不采纳了,由衷地感谢了!0%2 得2么 得写个程序测试下 我也不清楚 你那里有编译器没 测试下没事我弄错了 0%2为0,刚被3%10为3这两个弄糊涂了