Java经典编程题
题目 1:斐波那契数列
题目要求:编写一个方法,输入正整数n
,输出斐波那契数列的第n
项。斐波那契数列的定义是:F(0)=0
,F(1)=1
, 当n > 1
时,F(n)=F(n - 1)+F(n - 2)
。
答案:
public class Fibonacci {public static int fib(int n) {if (n == 0) return 0;int a = 0, b = 1;for (int i = 2; i <= n; i++) {int c = a + b;a = b;b = c;}return b;}
}
题目 2:字符串反转
题目要求:编写一个方法,将输入字符串进行反转。
答案:
public class ReverseString {public static String reverse(String s) {return new StringBuilder(s).reverse().toString();}
}
题目 3:判断素数
题目要求:编写一个方法,判断输入的正整数是否为素数(质数)。
答案:
public class PrimeChecker {public static boolean isPrime(int n) {if (n <= 1) return false;for (int i = 2; i <= Math.sqrt(n); i++) {if (n % i == 0) return false;}return true;}
}
题目 4:冒泡排序
题目要求:编写一个方法,使用冒泡排序算法对整数数组进行升序排序。
答案:
public class BubbleSort {public static void sort(int[] arr) {int n = arr.length;for (int i = 0; i < n - 1; i++) {for (int j = 0; j < n - i - 1; j++) {if (arr[j] > arr[j + 1]) {int temp = arr[j];arr[j] = arr[j + 1];arr[j + 1] = temp;}}}}
}
题目 5:计算阶乘
题目要求:编写一个方法,计算输入正整数n
的阶乘n!
。
答案:
public class Factorial {public static int factorial(int n) {if (n == 0) return 1;int result = 1;for (int i = 1; i <= n; i++) {result *= i;}return result;}
}