4个回答
2015-12-10 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
关注
展开全部
异或的意思就是相异为真。。
现在问题主要是出现在这一句。。
b[--i]=a[j]^a[--j];
注意啦。。编译器编译的时候是从后向前的。。也就是先算a[--j],这样j就先自减了。。j从3变为2。。然后再算a[j],因为j是2,调用的时候,就是调a[2]
所以整个语句第一次执行的时候就是b[2]=a[2]^a[2],结果显然是0;
所以输出的是1100
现在问题主要是出现在这一句。。
b[--i]=a[j]^a[--j];
注意啦。。编译器编译的时候是从后向前的。。也就是先算a[--j],这样j就先自减了。。j从3变为2。。然后再算a[j],因为j是2,调用的时候,就是调a[2]
所以整个语句第一次执行的时候就是b[2]=a[2]^a[2],结果显然是0;
所以输出的是1100
展开全部
#include<stdio.h>
void main()
{
int a=15;
int b=6;
int c = a^b;
printf("%d",c);
}
直接用异或符号^,得到的是数字9,因为设置输出是%d
void main()
{
int a=15;
int b=6;
int c = a^b;
printf("%d",c);
}
直接用异或符号^,得到的是数字9,因为设置输出是%d
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
异或运算相当于不进位的加法运算,就是相同的变0,不同的变1,
举个例子
1 0 1 1 1 1 0 0
^ 0 1 1 0 1 0 0 1
= 1 1 0 1 0 1 0 1
举个例子
1 0 1 1 1 1 0 0
^ 0 1 1 0 1 0 0 1
= 1 1 0 1 0 1 0 1
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2015-10-23 · 知道合伙人生活技巧行家
关注
展开全部
异或也叫半加运算,其运算法则相当于不带进位的二进制加法:二进制下用1表示真,0表示假,则异或的运算法则为:0⊕0=0,1⊕0=1,0⊕1=1,1⊕1=0(同为0,异为1),这些法则与加法是相同的,只是不带进位。
异或略称为XOR、EOR、EX-OR
程序中有三种演算子:XOR、xor、⊕。
使用方法如下
z = x ⊕ y
z = x xor y
异或略称为XOR、EOR、EX-OR
程序中有三种演算子:XOR、xor、⊕。
使用方法如下
z = x ⊕ y
z = x xor y
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询