
1. 已知char c='A'; int i=l, j;,执行语句j=!c&&i++;后,则i和j的值是( )。
3个回答
展开全部
=的优先级低于
&&
所以,优先执行
!c
,因为c='a',说以!c等于0,
由于&&是短路求值的,所以不会执行后面的i++;逻辑表达式的值为false
即值为0;所以,j的值为
0;i的值仍然是
1;
&&
所以,优先执行
!c
,因为c='a',说以!c等于0,
由于&&是短路求值的,所以不会执行后面的i++;逻辑表达式的值为false
即值为0;所以,j的值为
0;i的值仍然是
1;
展开全部
答案:
B.
1,0
j=!c&&i++;
执行时,j=!c,由于c为字符A,所以为真,!c就为假,所以j=0;
条件j=!c&&i++;由于j为假,所以不会执行i++;所以
i=1;
B.
1,0
j=!c&&i++;
执行时,j=!c,由于c为字符A,所以为真,!c就为假,所以j=0;
条件j=!c&&i++;由于j为假,所以不会执行i++;所以
i=1;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
c='A'
!c=0;所以i++;不执行,所以j=0;
所以
i=1,j=0;
在C语言中
&&
如果左边为假,则右边不执行,
||
如果左边为真,则不执行右边
!c=0;所以i++;不执行,所以j=0;
所以
i=1,j=0;
在C语言中
&&
如果左边为假,则右边不执行,
||
如果左边为真,则不执行右边
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询