java:数据交换
程序员文章站
2022-05-19 13:18:48
...
java:数据交换
题目
问题描述
编写一个程序,输入两个整数,分别存放在变量x和y当中,然后使用自己定义的函数swap来交换这两个变量的值。
输入格式:输入只有一行,包括两个整数。
输出格式:输出只有一行,也是两个整数,即交换以后的结果。
要求:主函数负责数据的输入与输出,但不能直接交换这两个变量的值,必须通过调用单独定义的函数swap来完成,而swap函数只负责交换变量的值,不能输出交换后的结果。
输入输出样例
样例输入
4 7
样例输出
7 4
我觉得我写的很不错,但不知道哪里有问题
import java.util.Scanner;
public class swap交换 {
public static void swap(int a,int b){
int temp=a;
a=b;
b=temp;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc=new Scanner(System.in);
int a=sc.nextInt();
int b=sc.nextInt();
swap(a,b);
System.out.print(a+" "+b);
}
}
我实在不懂为什么我就加了两个变量为什么就不行了,而且我最后把a,b重新赋值了呀。怎么就不行了,我后来还有swap这个里面的变量改了,也不可以。必须把a,b设置为static,之后swap就直接进行转换。
有点懵!!!
正确代码
import java.util.Scanner;
public class swap交换 {
public static int a,b;
public static void swap(){
int temp=a;
a=b;
b=temp;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc=new Scanner(System.in);
a=sc.nextInt();
b=sc.nextInt();
swap();
System.out.print(a+" "+b);
}
}
上一篇: Flume入门案例(三个简单的小案例)
下一篇: 优衣库必火!