求助:设计Bash循环实现10次迭代并累计输入数值总和
Bash实现10次输入数字并累计总和的循环
以下是适配WSL环境的简洁Bash代码,完全满足你的需求:
#!/bin/bash # 初始化累计总和为0 sum=0 # 循环迭代10次 for (( count=1; count<=10; count++ )) do # 提示用户输入当前次数的数字并读取输入 read -p "请输入第${count}个数字: " number # 将输入数字累加到总和中 sum=$(( sum + number )) done # 输出最终的累计总和 echo "10个数字的累计总和为: ${sum}"
代码关键部分说明:
#!/bin/bash:指定脚本使用Bash解释器,WSL默认支持该环境。sum=0:初始化总和变量,确保起始计算值为0。for (( count=1; count<=10; count++ )):定义循环逻辑,从1到10共执行10次迭代。read -p "提示文本" number:显示提示信息并将用户输入的内容存入number变量。sum=$(( sum + number )):通过Bash算术扩展语法更新总和,自动处理整数运算。
进阶:添加输入验证(防止非数字输入报错)
如果需要避免用户输入非数字导致脚本异常,可以加入简单的验证逻辑:
#!/bin/bash sum=0 for (( count=1; count<=10; count++ )) do while true do read -p "请输入第${count}个数字: " number # 校验输入是否为正整数 if [[ "$number" =~ ^[0-9]+$ ]]; then break else echo "请输入有效的整数!" fi done sum=$(( sum + number )) done echo "10个数字的累计总和为: ${sum}"
这个版本会在用户输入非整数时反复提示,直到输入有效内容为止。
内容的提问来源于stack exchange,提问作者your_mack
相关产品推荐
相关产品推荐

