c语言整数与异或,C语言整数与异或

2020-11-22 17:14:59 字数 3726 阅读 9379

1楼:匿名用户

得到如下**:

#include

intmain()

2楼:陌路卖酱油

#include

int main()

c语言异或操作

3楼:匿名用户

你是打算对数字进行异或,需要将字符变成数字,异或完后再变回字符我只简单写了一下,没有异常处理,顺便说你b中f少了一个#include

int ctoi(char c)

char itoc(int i)

int main()

printf("%s\n",c);

return 0;}

4楼:星月小木木

c语言的异或操作是位操作的一种,其运算符号为^。

要打出这个符号,需要在英文输入法下,输入shift + 6即 1 按下shift, 左右均可;

2 按6, 即按下,抬起;

3 抬起shift。

异或操作是按位操作,当两个操作数同一位上值相同时(同为1或同为0),结果对应位上的值为0;否则值为1。

c语言编程 求两组整数的异或集

5楼:匿名用户

先看paixu函数……其实你知道a数组有多长,应该把这个长度当做输入传给paixu函数,让它只对这些数字排序。否则后面的0也都参与了排序,肯定会出错。

shanshu函数……好像问题不大……但是还是应该只对数组范围内的进行操作。

其实这种数组删数的操作太复杂,应该尽量避免,而且不要题让你干嘛你就干嘛,太耿直……

比如这里,排完序之后,我们不用删除数字。因为我们知道数组里一共有i个数,可以这么写:

for(k=0;k

直接就搞定了……

c语言里异或运算符运算不同位数的数字怎么办

6楼:匿名用户

你的问题c语言会通过隐式类型转换来完成,无需专门**,也无需你来操心如果我没理解错你的问题,你是说类似于32位int与64位long型的异或运算吗

c语言中会隐式的把int自动扩展成long型,然后进行异或运算比如inta=10

longb=20l;

longc=a^b;//a自动扩展为long型具体转换优先顺序,可以参考任意一本c语言基础教程的“类型转换”一节

c语言按位异或

7楼:雷特生杰特猛

以上**其实实现的是a和b不借助第三个变量来交换之间的值;b=a^b^b不等于b=a^0;因计算是从左往右的顺序,如果a=a^b,那么b=a^b^b等于b=a^b; a=a^b^b^a^b也同样理解

8楼:

^不知道你在问什么问题!整型数a^0还是整型数a。^是左-->右结合的,0^b^0就是(0^b)^0,所以结果还是b。

b=a^b^b和a=a^b^b^a^b不知=是赋值还是==,要是赋值,前者的结果是b的值为a,后者的结果是a的值是b;要是等式,即是==,那显然是错误的,应该是a=a^b^b和b=a^b^b^a^b才对。

9楼:匿名用户

按位异或需要将异或双方转换成二进制数,如当a=5时,二进制为101,与0异或后结果为100,也就是b=4的二进制了。

异或时的规则是:逐位进行比较,相同为0(即1与1异或为0,0与0异或为0),不同为1(即0与1异或为1,1与0异或为1)。

10楼:源玉巧茅烟

按位异或,其操作符为^,形式为

a^b计算时,根据操作数a和b每位的值,计算结果,当a,b的对应位上值相同时,结果的该位上值为0,否则值为1。

如chara=

0x12,b=

0x34;

a^b=

0x12

^0x34

=b0001

0010

^b0011

0100

=b0010

0110

=0x26

c语言中能直接异或数吗?

11楼:乐酷科技

可以的 两个数相同就为0 不同为1

12楼:匿名用户

可以的 ^是异或运算符

13楼:匿名用户

当然可以,异或操作符:^

14楼:匿名用户

可以 直接异或数其实也是异或这俩个数在内存中对应的位异或相当于数学中的模2加

如 8(十进制) = 1 0 0 0(二进制)6(十进制) = 0 1 1 0(二进制)那么8^6 = 1 1 1 0 (二进制) = 14(十进制)

在c语言中异或的用法是什么?

15楼:

异或是一个数**算符。它应用于逻辑运算。

在【布尔值运算】中:真异或假的结果是真,假异或真的结果也是真,真异或真的结果是假,假异或假的结果是假。就是说两个值不相同,则异或结果为真。反之,为假。

在【二进制值运算】中:不同为1,相同为0,如1001异或1010等于0011。

异或也叫半加运算,其运算法则相当于不带进位的二进制加法:二进制下用1表示真,0表示假,则异或的运算法则为:0异或0=0,1异或0=1,0异或1=1,1异或1=0(同为0,异为1),这些法则与加法是相同的,只是不带进位。

c语言 不同数据类型值间的异或

16楼:匿名用户

int,long,short这样的整型数据异或的时候就是二进制的异或

char是转为ascii码以后的二进制

而float和double就比较麻烦了 一般不用来做异或

17楼:昙花e仙

原则上,不同类型之间是不可以进行异或运算的。想运算,必须进行强制性转换

c语言中位异或怎样理解呢?

18楼:匿名用户

按位异或。

相同为零,不同为一。

任何数与全0异或,值不变。

任何数与全1异或,值取反。

任何数与自己异或,值为0。

例如char a;

a^0xff值为a的反

a^0x0 值为a不变

又如int a;

a^0xffffffff 值为a的反

a^0x0值为a不变

异或的应用举例:

交换a,b的值,不借用任何中间变量,则通过下列三个语句就可实现:

a=a^b;

b=a^b;

a=a^b;

19楼:匿名用户

先讲下一位异或,假设a、b都是一位,那么如果a <> b,结果就是1,否则就是0。

再来看按位异或。按位异或就是把两个二进制数,按每一位分别进行异或运算。

例子:01011100

xor00110101

=01101001

每一位都是对应的。

20楼:小斌

楼:异或就是加法,同或就是乘法

21楼:匿名用户

同归于尽,,

你有的,我也有的,不行,同归于尽,

你没有的,我有的

我有的,你没有,这样才高兴嘛,,

符号在c语言中表示单一I O口和异或运算是怎样区分的

1楼 晨曦月殇 这个是这样区分的啊 你表示io口时是这样的 sbit p10 p1 0 是吧 有sbit呢 你玩抑或运算时一般是这样的 int xx 0xaf int yy 0xdf int cc xx yy 很明显吧,异或运算两边一般是变量。 当然 还有这种情况 int cc p10 0xff 这...

c语言输入整数1ltnlt100在输入n个字符将

1楼 匿名用户 1,读入字符组 2,后判断每个字符的类型 3,转换该转的就行了 2楼 include int main str n 0 puts str return 0 3楼 情缘掠影 大小写转换是变量大写加32变小写,小写减32变大写。 c语言输入一个整数 1 4楼 匿名用户 include s...

c语言题:输入字符,输出对应的ascii码,直到输入q或

1楼 我是不是师兄 你想输入之后就输出结果吗 应该是这样 include include int main void while ch q ch q 这里你写错了 写成ch q return 0 q 恒为0 所以不会循环 2楼 匿名用户 对照着改 吧 include include int main...