for循环练习题

一、计算从1到100所有整数的和

#!/bin/bash
sum=0
for ((i=1; i<=100; i++))
do sum=$[sum+$i]
done
echo $sum 

在这里插入图片描述
在这里插入图片描述

二、过滤出从1到100所有整数的奇偶数

#!/bin/bash
for ((i=1; i<=100; i++))
do
let a=$i%2
if [ $a = 0 ];then
echo -n " $i是偶数 " 
else
echo -n " $i是奇数 "
fi
done

在这里插入图片描述
在这里插入图片描述

三、提示用户输入一个小于100的整数,并计算从1到该数之间所有整数的和

#!/bin/bash
read -p "请输入一个小于100的整数:" num
if [ $num -lt 100 -a $num -ge 1 ] &> /dev/null;then
sum=0
for ((i=1; i<=$num; i++))
do
sum=$[sum + $i]
done
echo "从1加到$num的总和为$sum"
elif
[ $num -le 0 ] &> /dev/null;then
for ((i=1; i>=$num; i--))
do
sum=$[sum + $i]
done
echo "从$num加到1的总和为$sum"
else
echo "输入错误!"
fi

在这里插入图片描述
在这里插入图片描述

四、求从1到100所有整数的偶数和、奇数和

#!/bin/bash
a=0
for ((i=2; i<=100; i+=2))
do
a=$[a + $i]
done
echo "1到100所有偶数和为$a"
b=0
for ((i=1; i<=99; i+=2))
do
b=$[b + $i]
done
echo "1到100所有奇数和为$b"

在这里插入图片描述
在这里插入图片描述

五、检测指定范围主机是否通信,并将通信的主机ip输出到文件host_ip中

#!/bin/bash
for i in 192.168.1.{
    
    10..20}
do
ping -c 2 -i 0.5 -W 1 $i &> /dev/null
if
[ $? = 0 ];then
echo "$i is online" >> host_ip
else
echo "$i is offline" 
fi
done

在这里插入图片描述
在这里插入图片描述

六、输出/dev目录中的所有可执行文件

#!/bin/bash
for i in ls /dev/*
do
if 
[ -f $i ] && [ $? = 0 ];then
echo &> /dev/null
if
[ -x $i ] && [ $? = 0 ];then
echo "$i 文件有可执行权限"
else
echo "$i 文件无可执行权限"
fi
else
echo &> /dev/null
fi
done

在这里插入图片描述

在这里插入图片描述

七、乘法口诀表(双循环)

#!/bin/bash
for ((a=1; a<=9; a++))
do
    for ((b=1; b<=$a; b++))
do
    c=$[$b * $a]
    echo -n -e "$b*$a=$c\t"
done
echo ""
done      

在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/Ryu_hayabusa/article/details/114527496