Linux题目: 编写一个Shell脚本,它能够显示下面系列钱10个数字:0,1,1,2,3,4,8,13……

考试题目啊……大大们火速救援!
饿,的确是5 ,手误…… 0,1,1,2,3,5,8,13……

0,1,1,2,3,4,8,13
那个应当是5吧。

========
#!/bin/sh
a=0
b=1
echo -n $a,$b
for (( i=0;i<8;i++))
do
c=$((a+b))
a=$b
b=$c
echo -n ,$c
done
echo

将上面保存成fibonacci.sh。
然后在命令行输入
chmod u+x ./fibonacci.sh
最后再运行
./fibonacci.sh
即可以得到结果:
0,1,,1,2,3,5,8,13,21,34
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-11-05
a1=1
a0=0
i=1
echo $i:$a0
while test $i -ne $1
do
i=`expr $i + 1`
echo $i:$a1
a2=`expr $a1 + $a0`
a0=$a1
a1=$a2
done

保存以上脚本代码为serial.sh
计算时需给出要打出的数列元素个数,如打印5个元素,执行
sh serial.sh 5
1:0
2:1
3:1
4:2
5:3

要打印10个元素:
sh serial.sh 10
1:0
2:1
3:1
4:2
5:3
6:5
7:8
8:13
9:21
10:34