首页 > 编程语言 > Java基础题新手练习(一)
2021
10-12

Java基础题新手练习(一)

找出出现一次的数字

有一组数据,只有一个数字是出现一次,其他是两次,请找出这个数字

源码

public static int findNum(int arr []){
    int n=0;
    for(int i =0;i<arr.length;i++){
        n^=arr[i];
    }
    return n;
}

运行结果:

在这里插入图片描述

斐波那契数

求斐波那契数列的第n项。(迭代实现。

源码

public  static int fibo(int n){
    if(n==1){
        return 0;
    }
    if(n==2){
        return 1;
    }
    int sum= 0;
    int a=0;
    int b=1;
    for (int i = 2; i <n; i++) {
        sum =a+b;
        a=b;
        b=sum;
    }
    return sum;
}

运行结果:

}

求阶乘和

求1!+2!+3!+4!+…+n!的和

源码

public  static int getSum(int n){
    int sum = 0;
    for (int i = 1; i <= n; i++) {
        int ret = 1;
        for (int j = 1; j <= i; j++) {
            ret *= j; 
        }
        sum += ret;
    }
    return sum;
}

运行结果:

在这里插入图片描述

求 N 的阶乘

源码

import java.util.Scanner;
public class Test {
    public static void main(String[] args) {
              System.out.println("请输入N的值:");
              Scanner scanner =new Scanner(System.in);
              int n= scanner.nextInt();
              System.out.println(function(n));
    }
    public  static int  function( int n){
        if(n==0){
            return 1;
        }
        else
            return n*function(n-1);
    }
}

运行结果:

在这里插入图片描述

奇数位于偶数之前

调整数组顺序使得奇数位于偶数之前。调整之后,不关心大小顺序。

源码

public static  int[] sort(int arr[]){
    for (int i = 0; i < arr.length-1; i++ ) {
        for (int j = 0;j < arr.length-1-i;j++) {
            if (arr[j] % 2 == 0) {
                int tem = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = tem;
            }
        }
    }
   return arr;
}

运行结果:

在这里插入图片描述

求和的重载

在同一个类中,分别定义求两个整数的方法 和 三个小数之和的方法。 并执行代码,求出结果

源码

public  static int getSum(int i, int j){
    return i+j;
}
public static double getSum(double i,double j,double k){
    return i+j+k;
}

运行结果:

在这里插入图片描述

总结

本篇java基础练习题就到这里了,希望对你有所帮助,也希望您能够多多关注自学编程网的更多内容!

编程技巧