这是一个程序,它接受一个命令行变量,将其解析为一个 int,输出是等于该 cmd 行参数的斐波那契数。所以如果我输入 7,输出将是 13。因为:1 1 2 3 5 8 13 有人能解释一下 b = a;在for循环里面?既然它们都已经等于 1,为什么需要将它们设置为彼此相等呢?
int a,b,c;
int n = Integer.parseInt(args[0]);
a = 1;
b = 1;
c = 0;
if (n == 1 || n == 2)
System.out.println(1);
else
{
for (int i = 3; i<=n; i++)
{
c = a + b;
b = a;
a = c;
}
System.out.println(c);
}
}
慕沐林林
茅侃侃
相关分类