1.使用for循环打印出家目录下所有的 .sh 结尾的文件 2.使用for循环输出从1累加到100的值 3.使用while循环计算整数1-100的值 4.使用while循环计算整数1-100的值(跳过90) 5.使用while循环计算整数1-100的值(加到10,跳出循环) 6.用case写一个计算器,完成加减乘除的运算,结束程序 7.用select编写一道单选题和多选题
时间: 2024-04-24 17:22:06 浏览: 91
好的,我会回答你的问题。以下是每个问题的答案:
1.使用for循环打印出家目录下所有的 .sh 结尾的文件
```
for file in ~/Desktop/*.sh
do
echo $file
done
```
2.使用for循环输出从1累加到100的值
```
sum=0
for i in {1..100}
do
sum=$((sum+i))
done
echo $sum
```
3.使用while循环计算整数1-100的值
```
sum=0
i=1
while [ $i -le 100 ]
do
sum=$((sum+i))
i=$((i+1))
done
echo $sum
```
4.使用while循环计算整数1-100的值(跳过90)
```
sum=0
i=1
while [ $i -le 100 ]
do
if [ $i -eq 90 ]
then
i=$((i+1))
continue
fi
sum=$((sum+i))
i=$((i+1))
done
echo $sum
```
5.使用while循环计算整数1-100的值(加到10,跳出循环)
```
sum=0
i=1
while [ $i -le 100 ]
do
sum=$((sum+i))
if [ $i -eq 10 ]
then
break
fi
i=$((i+1))
done
echo $sum
```
6.用case写一个计算器,完成加减乘除的运算,结束程序
```
while :
do
read -p "请输入一个数:" num1
read -p "请输入运算符(+、-、*、/):" operator
read -p "请输入另一个数:" num2
case $operator in
+) result=$((num1+num2));;
-) result=$((num1-num2));;
\*) result=$((num1*num2));;
/) result=$((num1/num2));;
*) echo "无效的运算符"; exit;;
esac
echo "结果为:$result"
done
```
7.用select编写一道单选题和多选题
单选题:
```
options=("A" "B" "C" "D")
echo "以下哪个国家不在亚洲?"
select answer in "${options[@]}"
do
case $answer in
"A") echo "回答错误";;
"B") echo "回答错误";;
"C") echo "回答错误";;
"D") echo "回答正确"; break;;
*) echo "无效的选项,请重新选择";;
esac
done
```
多选题:
```
options=("A" "B" "C" "D" "E")
echo "以下哪些国家是联合国安理会常任理事国?(多选)"
select answer in "${options[@]}"
do
case $answer in
"A"|"B"|"C") echo "回答错误";;
"D"|"E") echo "回答正确";;
"ABCDE") echo "回答错误,不能选择全部选项";;
*) echo "无效的选项,请重新选择";;
esac
done
```
阅读全文