shell脚本 for, while, if, case..in, select..in, 函数.. (9.23)

1.统计家目录下.c文件的个数

#!/bin/bash  
  
# 初始化计数器  
count=0  
  
# 遍历家目录下的所有项(注意:这不会递归进入子目录)  
for file in ~/*; do  
    # 检查项是否为文件且以.c结尾  
    if [ -f "$file" ] && [ "${file##*.}" = "c" ]; then  
        ((count++))  
    fi  
done  
  
# 输出结果  
echo "家目录下共有 $count 个 .c 文件。"

2.定义一个稀疏数组(下标不连续)

写一个函数,求该稀疏数组的和,要求稀疏数组中的数值通过参数传递到函数中。

arr=([2]=9 [4]=8 [30]=23 [24]=3 [21]=7)

#!/bin/bash  
  
# 定义并初始化稀疏数组  
declare -A arr  
arr[2]=9  
arr[4]=8  
arr[30]=23  
arr[24]=3  
arr[21]=7  
  
# 定义一个函数来计算稀疏数组的总和  
function sum_sparse_array() {  
    local sum=0  
    # 遍历传入的数组 
    for key in "${!1[@]}"; do   
        local value="${1[$key]}"  
        # 累加 
        ((sum += value))  
    done  
    echo $sum  
}  
  
# 调用函数并传入数组名  
sum=$(sum_sparse_array arr)  
echo "Sparse array sum: $sum"

 

 3.思维导图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值