交换两个数没有成功,是不是方法应该要有返回值
import java.util.Scanner;
public class ExchangeNums {
public static void main(String[] args)
{
int a,b;
Scanner sc=new Scanner(System.in);
System.out.println("请输入a的值");
a=sc.nextInt();
System.out.println("请输入b的值");
b=sc.nextInt();
print(a,b);
exchange(a,b);
print(a,b);
}
public static void exchange(int x,int y) //交换方法
{
x=x^y;
y=x^y; //y=x^y^y=x
x=x^y; //x=x^y^x=y
}
public static void print(int x,int y) //输出方法
{
System.out.print(x+","+y+"\n");
}
}
public class ExchangeNums {
public static void main(String[] args)
{
int a,b;
Scanner sc=new Scanner(System.in);
System.out.println("请输入a的值");
a=sc.nextInt();
System.out.println("请输入b的值");
b=sc.nextInt();
print(a,b);
exchange(a,b);
print(a,b);
}
public static void exchange(int x,int y) //交换方法
{
x=x^y;
y=x^y; //y=x^y^y=x
x=x^y; //x=x^y^x=y
}
public static void print(int x,int y) //输出方法
{
System.out.print(x+","+y+"\n");
}
}
...全文
相关推荐
函数指针来交换两个数
用一个函数指针来交换两个数
C语言——多种方法交换两个数
多种方法交换两个数 题目描述 输入两个数 a , b ,交换他们的值 解题思路及方法 采用中间变量的方法,交换两个数的值,或者采用交换地址的方式输出他们的值,或者用位运算符,只要达到输出的时候体现出他们的值被交换过了就行。 样例输入 10 20 样例输出 20 10 方法一 (采用中间变量) #include<stdio.h> int main() { int ...
C++使用异或运算实现交换两个数的值
交换两个数的值,通常用利用一个变量来交换数值,异或交换两个数的值是资源开销最小的方法,不需要中介数,原理简单的来说就是异或的负负得正
Java不使用中间变量交换两个数
在程序中实现交换两个数的功能并不复杂,但如果不使用中间变量,需要动一下脑筋。在本文介绍了两个方法(其实原理都是一个)。其基本原理是数的中和。也是说,通过某种运算(二元运算)将a和b两个数变成一个数,并保存在其中一个变量中。然后再通过同 样的运算符将a或b中和掉。这样实际上是利用了a或 b本身作为了中间变量。 先看第一个算法。 static class Num { int a; int b; } public static void swap1(Num num) { num.a = num.a + num.b; num.b = num.a - num.b; num.a
用宏实现两个数的交换
C语言中,使用宏定义 #define 来实现两个数字的交换


Java SE
