随笔 - 55  文章 - 0  评论 - 0  阅读 - 1047

09_石头剪刀布

1. 数组
root@bk:~# arr=(aa bb cc)
root@bk:~# echo ${arr[@]}
aa bb cc
root@bk:~# echo ${arr[0]}
aa
root@bk:~# echo ${arr[2]}
cc

# 遍历序号
root@bk:~# for i in ${!arr[@]};do echo $i;done
0
1
2

# 通过序号遍历元素
root@bk:~# for i in ${!arr[@]};do echo ${arr[$i]};done
aa
bb
cc

# 求数组长度
root@bk:~# echo ${#arr[@]}
3

# 数组增加,删除元素
root@bk:~# echo ${arr[@]}
aa bb cc dd
root@bk:~#
root@bk:~# arr+=(ee)
root@bk:~#
root@bk:~# echo ${arr[@]}
aa bb cc dd ee
root@bk:~#
root@bk:~# unset arr[4]
root@bk:~#
root@bk:~# echo ${arr[@]}
aa bb cc dd
2. 石头剪刀布
#!/bin/bash
game=(石头 剪刀 布)
num=$((RANDOM % 3))
computer=${game[$num]} #通过随机数获取计算机的出拳
#出拳的可能性保存在一个数组中,game[0],game[1],game[2]分别是 3 中不同的可能

echo "请根据下列提示选择您的出拳手势"
echo "1.石头"
echo "2.剪刀"
echo "3.布"
read -p "请选择 1-3:" person

case $person in

1)
    if [ $num -eq 0 ]; then
        echo "平局"
    elif [ $num -eq 1 ]; then
        echo "你赢"
    else
        echo "计算机赢"
    fi
    ;;

2)
    if [ $num -eq 0 ]; then
        echo "计算机赢"
    elif [ $num -eq 1 ]; then
        echo "平局"
    else
        echo "你赢"
    fi
    ;;

3)
    if [ $num -eq 0 ]; then
        echo "你赢"
    elif [ $num -eq 1 ]; then
        echo "计算机赢"
    else
        echo "平局"
    fi
    ;;
*)
    echo "必须输入 1-3 的数字"
    ;;
esac
posted on   鸟叔书  阅读(5)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示