跪求一道C语言的选择题 求详解
当把以下选项用作if语句的控制表达式时,有一个与其他三个含义不同(D)A.k%2B.k%2=1C.(k%2)!=1D.!k%2==1答案是D请说下理由哈...
当把以下选项用作if语句的控制表达式时,有一个与其他三个含义不同(D)
A.k%2 B.k%2=1 C.(k%2)!=1 D.!k%2==1
答案是D 请说下理由哈 展开
A.k%2 B.k%2=1 C.(k%2)!=1 D.!k%2==1
答案是D 请说下理由哈 展开
7个回答
展开全部
我觉得你的选项有错吧 你再检查一下选项 下面有这几种情况
K%2无非只有两个结果0和1
(A)k%2
放在if语句中表示结果是1 为真 结果是0 为假
(B)k%2==1(b选项应该这样写吧)
放在if语句中表示只要k%2的结果为1就是返回真,其他就是假 所以这个是跟A一样的
(C)(k%2)!=0(c选项可能应该这样写)
放在if语句中表示k%2的结果只要不等于0就返回真 否则为假
这跟结果等于1是真是一样的 所以ABC相同
(D)的表达式的意思是将k%2的结果取反 如果取反后的记过等于1就是真否则就是假 换种说法就是如果k%2结果为0就是真 否则就是假 那这个选项跟其他三个选项是不一样的 所以选D
K%2无非只有两个结果0和1
(A)k%2
放在if语句中表示结果是1 为真 结果是0 为假
(B)k%2==1(b选项应该这样写吧)
放在if语句中表示只要k%2的结果为1就是返回真,其他就是假 所以这个是跟A一样的
(C)(k%2)!=0(c选项可能应该这样写)
放在if语句中表示k%2的结果只要不等于0就返回真 否则为假
这跟结果等于1是真是一样的 所以ABC相同
(D)的表达式的意思是将k%2的结果取反 如果取反后的记过等于1就是真否则就是假 换种说法就是如果k%2结果为0就是真 否则就是假 那这个选项跟其他三个选项是不一样的 所以选D
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
B 选项是否是 k%2 == 1,如果是 k%2 = 1, 那 if(k%2 = 1)无论如何都为真了……
那么,我猜是你打错了。
只提一点,!的优先级比%高。
那么,我猜是你打错了。
只提一点,!的优先级比%高。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这样的,前三个都是计算式,比如k % 2 = 1,是计算出k的值,C答案也一样,A答案是k % 2如果有一个K值,那么这个if语句也成立。而最后一个是做比较,是判断==号左边的值是否等于右边的,是,则if语句满足,否则就不满足
如果满意,请采纳
如果满意,请采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2010-08-13
展开全部
B肯定不行,这是赋值不是判断
A和C的用意是一样的
D中,先对k取反(!的优先级高),再模2进行判断
A和C的用意是一样的
D中,先对k取反(!的优先级高),再模2进行判断
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
c
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询