这种办法应该比较好理解// 长度为10的数组,前两个元素的值已知 int[] arr = new int[] {1, 1, 0, 0, 0, 0, 0, 0, 0, 0}; // 从索引为2的元素开始修改为正确的值 for (int i = 2; i < arr.length; i++) { arr[i] = arr[i-1] + arr[i-2]; } // 输出修改后的数组 for (int i = 0; i < arr.length; i++) { System.out.print(arr[i] + " "); } // 输出:1 1 2 3 5 8 13 21 34 55
再提供一种方法,相比上一个,要多动一下脑筋。int a = 1, b = 1; // 先输出前两个 System.out.print(a + " " + b + " "); // 第三个到第十个 for (int i = 3; i <= 10; i++) { int temp = b; b = a + b; a = temp; System.out.print(b + " "); }
public class TestOfFibonacc { public static void main(String[] args) { TestOfFibonacc tof = new TestOfFibonacc(); for(int i = 0 ; i < 10 ;i++) { System.out.print(tof.Fibonacc(i)+ " "); } } public int Fibonacc(int n) { if(n<=1) return 1; else return Fibonacc(n-1)+Fibonacc(n-2); } }
int[] arr = new int[] {1, 1, 0, 0, 0, 0, 0, 0, 0, 0};
// 从索引为2的元素开始修改为正确的值
for (int i = 2; i < arr.length; i++) {
arr[i] = arr[i-1] + arr[i-2];
}
// 输出修改后的数组
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i] + " ");
}
// 输出:1 1 2 3 5 8 13 21 34 55
// 先输出前两个
System.out.print(a + " " + b + " ");
// 第三个到第十个
for (int i = 3; i <= 10; i++) {
int temp = b;
b = a + b;
a = temp;
System.out.print(b + " ");
}
{
public static void main(String[] args)
{
TestOfFibonacc tof = new TestOfFibonacc();
for(int i = 0 ; i < 10 ;i++)
{
System.out.print(tof.Fibonacc(i)+ " ");
}
}
public int Fibonacc(int n)
{
if(n<=1)
return 1;
else
return Fibonacc(n-1)+Fibonacc(n-2);
}
}