int i=0,j=2,k=4,m;m=i++&&--j&&k++;在c语言中&&是什么意思啊ijkm等于什么为什么啊
6个回答
展开全部
&&是逻辑与,就是两边的操作数为真,也即非0时,结果就为1,否则结果为0。而且&&有一个特点是在知道第一个操作数为假时,即为0时,就不会再判断后面的表达式了,也叫短路与。这个当i--&&--j运算时,由于i为0,所以就不会进行后面的--j表达式了,然后再对i减1,i的值就变为1。由于(i++&&--j)的值为0,所以也不会对k++进行计算了,所以k的值也不变。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
&&和||都是逻辑运算符,表示“逻辑与”。这里m = 0, i = 1, j = 1, k = 5。
++i和i++的区别就是:++i先自增,在运算;i++ 是先运算,再自增。
++i和i++的区别就是:++i先自增,在运算;i++ 是先运算,再自增。
追问
可是放在c编译器中 m=0 i=1 j=2 k=4 啊
追答
哦,不好意思,我忘记&&有短路性了。j和k应该是没有计算
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
&&在C中是与的意思;
你上面给的信息不是特别的全,建议你多贴出一些程序信息。
处理完后ijkm的值应当是:
i = 1;
j = 1;
k = 5;
m = 0;
详细交流:xubbwd@gmail.com
C编程技术交流。
你上面给的信息不是特别的全,建议你多贴出一些程序信息。
处理完后ijkm的值应当是:
i = 1;
j = 1;
k = 5;
m = 0;
详细交流:xubbwd@gmail.com
C编程技术交流。
追问
可是放在c编译器中 m=0 i=1 j=2 k=4 啊
追答
亲,可以发一个详细的程序吗?
你这样发一部分程序,无法完全的判断。
你这里的&&可能是错误的,你知道吗?这个与是判断与的意思,只能写在if、while里面。
你需要把你的意思表达完整。
谢谢!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询