void Func(int *x,int *y) {*x^=*y; *y^=*x; *x^=*y; } 这个函数的功能是什么?

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/08 17:02:29

void Func(int *x,int *y) {*x^=*y; *y^=*x; *x^=*y; } 这个函数的功能是什么?
void Func(int *x,int *y) {*x^=*y; *y^=*x; *x^=*y; } 这个函数的功能是什么?

void Func(int *x,int *y) {*x^=*y; *y^=*x; *x^=*y; } 这个函数的功能是什么?
不使用中间变量的两变量交换.
两变量交换通常用中间变量,伪代码写作:
swap(x, y)
{
x = t;
x = y;
y = t;
}
我们可以通过三次异或运算完成变量的交换,而不使用中间变量,即:
x = x xor y;
y = y xor x;
x = x xor y;
xor运算满足交换律和结合律,上面的步骤可写为下面的等式
y' = y xor (x xor y) = y xor y xor x = 0 xor x = x
x' = (x xor y) xor (y xor (x xor y)) = x xor y xor x = 0 xor y = y
经过运算后y'(y的新值)是x,x'是y,完成了交换

void Func(int *x,int *y) {*x^=*y; *y^=*x; *x^=*y; } 这个函数的功能是什么? 一道函数测试题!void func(int *x){ x=(int *)malloc(sizeof(int));*x=12;}int main(){ int x=10;func(&x);printf(%d,x)}x输出为什么是10?当所malloc那行注释后x的输出为12? char *func(int x,int y) 它是A对函数func定义,b,对函数func的调用,C,对函数func的原型说明,那个对? #include void modify(int x,int y) {cout #include void func(int b) { int a; a=b;b=10;} void main() {int a=10,b=20; func(b);printf(%d,%d,a,b):} #includevoid Func(void);int main(void){int i,n;printf( input a data:);scanf(%d,&n);for (i=0; i main() { int x=1,y=2,z=3; int r; r=func(x+y+z,x++,++y); printf(%d,r); } int func(int a,int b,intint func(int a,int b,int c){int d;d=a+b+c;return d;} 谁给我分析一下这个程序,为什么是这个结果#include <iostream.h>int n;int func(int x);void main(){ inta,b; a=5; b=func(a); cout<<" locala="<<a<<endl <<" 让人费解的一道C语言题目#include int func(int a,int b);void main(){int k=4,m=1,p;p=func(k,m);printf(%d,,p);p=func(%d ,p);}int func(int a,int b){static int m=0,i=2;i+=m+1;m=i+a+b;return(m);}A.8,17 B.8,16 C.8,20 D.8,8能将下为什么 void func(int *a,int b[]){b[0]=*a+6;}main(){int a,b[5];a=0;b[0]=3;func(&a,b);printf(%d ,b[0]);} typedef int (*func)(int, int*); 这个表达式是什么意思?func是什么类型? void func(inta,int&b) { a++; b++; } 若执行代码段:int x=0,y=1; func(x,y);则变量x和y的值分别是 A)0和1 B)1和1 C)0和2 D)1和2 #include int func(int a,int b) { int c; c=a+b;return c; } main()#include int func(int a,int b){ int c;c=a+b;return c;}main(){int x=6,y=7,z=8,r;r=func((x--,y++,x+y),z--);printf(%d ,r);}其中r=func((x--,y++,x+y)怎么取值啊 #include func(int a,int b){int c; c=a+b;returnc;}main(){intX=6,r;r#include func(int a,int b){int c; c=a+b;returnc;}main(){int x= 6,r;r = func (x,x+=2);printf (%d ,r);}A.14 B.15 C.16 D.17 int (*(*func[7][8][9])(int *)) [5] 的含义 func(int a,int b) {int c; c=a+b; return(c); } main() {int x=6,y=7,z=8,r; r=func((x--,y++,x+y),z--); C++有道题看不懂,#include int func(int a,int b);int main(){cout #include func(int a,int b) {int c; c=a+b; return c;} main() { int c=6,r; r=func(x,x+2);printf(%d ,r);