实现交换算法
发布时间: 2023-12-13 16:32:21
a=a^b^(a^b)
定义两个数int x,y;
如果x=0,y=0,x^y==0;
如果x=0,y=1,x^y==1;
如果x=1,y=0,x^y==1;
如果x=1,y=1,x^y==0;
Ⅱ a和b交换的算法疑问
a
=
b;的话
b
就是
a,a和b就相等了,就不会交换了。
第二种交换的方法如下a
=
1;
b=2;a=a+b;b=a-b;a=a-b
Ⅲ c语言2个数交换的算法ns图
你所说的使用指针一般是用在子函数里进行比较的,因为一个函数只能返回一个值,在函数中值互换后,需要返回两个值,所以,有人就想到了使用指针,因为指针指向的是地址,内存单元里面的内容互换后;a,b的值也会随之改变,这样,就可以不用返回值便能达到效果, 不使用临时变量可很简单,就是上面写#include<stdio.h> main(){ int M,N; printf("input value for M and N:\n"); scanf("%d %d\n",&M,&N); M=M+N; //把两数之和放在M中
N=M-N; //两数之和 减去 N的值,即M的值放在N中
M=M-N; //两数之和 减去 M的值(现在M的值是原来N的值),即N的值放在M中 printf("M and N value is:",M,N);}
热点内容