回顾:
shell输出20斐波那契数列
0 1 1 2 3 5 8…
for 变量名 in item
item可以是:
字符串
数字
命令行参数
文件名
linux命令输出 //要``或者$()引起来
for (( 初始化; 条件; 计算机表达式))
for (( i=1;i<4; i++))
//类C语言
for i in `seq 3`(i<3)
do
...
done
1.斐波那契数列脚本
最后一个数字永远是前2个数字的和
0 1 1 2 3 5 8 12 …
a=(0 1)
//数组中的下标从0开始
a[2]=`expr ${a[0]} + ${a[1]}`
a[3]=`expr ${a[1]} + ${a[2]}`
...
//a[n]=`expr ${a[n-2]} + ${a[n-1]}`
a[$n]=`expr ${a[$[n-2]]} + ${a[1$[n-2]}`
替换为:
a=(0 1)
for n in `seq 2 20`
do
a[n]=`expr ${a[-2]} + ${a[-1]}`
done
echo ${a[@]}
whi le循环:
语法结构:
while 条件测试