两种方法实现 打印1-100 之间的奇数和 或 偶数和:

输出 1 -100 的办法:

root@zhengzelin:~\# for i in $(seq 1 100);do echo $i;done |wc -l  # 太长了 ,使用 wc命令统计行数即可
100

root@zhengzelin:~\# for i in {1..100};do echo $i;done |wc -l
100

root@zhengzelin:~\# a=1;while [ $a -le 100 ];do echo $a;let a++;done;unset a | wc -l
100

第一种方法:

奇数和:
root@zhengzelin:~\# sum=0;for((i=1;i<=100;i+=2));do  sum=$(expr $sum + $i);done;echo $sum
2500
root@zhengzelin:~\# a=0;b=1;while [ $b -le 100 ];do let a=$a+$b; let b+=2;done;echo $a
2500


 留下好的习惯,声明和执行完变量之后,在脚本末尾 使用 nuset + 变量名  删除变量!
——————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————

偶数和:
root@zhengzelin:~\# sum=0;for((i=0;i<=100;i+=2));do  sum=$(expr $sum + $i);done;echo $sum
2550
root@zhengzelin:~\# a=0;b=0;while [ $b -le 100 ];do let a=$a+$b; let b+=2;done;echo $a
2550

第二种方法:

奇数和:
root@zhengzelin:~\# a=0;for i in {1..100..2};do let a=$a+$i;done;echo $a
2500

——————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————

偶数和:
root@zhengzelin:~\# a=0;for i in {0..100..2};do let a=$a+$i;done;echo $a
2550

原理:按规定的步数进行跳跃的方式实现列表for循环!

你可能感兴趣的:(shell)