码迷,mamicode.com
首页 > 系统相关 > 详细

shell编程练习

时间:2018-02-03 22:00:14      阅读:221      评论:0      收藏:0      [点我收藏+]

标签:log   括号   read   http   shel   结果   bin   element   注意   

题目一:求和练习:
#!/bin/bash
function sumarray {
local sum=0
local array
array=(echo "$@")
for value in ${array[]}
do
sum=$[$sum+$value]
done
echo $sum
}
wang=(1 2 3 4 5)
echo "初始数据为:${wang[
]}"
kai=echo ${wang[*]}
result=sumarray $kai
echo "结果是:$result"
exit 0
技术分享图片
解析:在这道题目里我注重练习函数的定义及使用,还有数组的使用,这些都是shell编程的重点难点。
本人在这道题目中犯下的错误:数组未加大括号,定义数组时未加小括号;这些应该注意!
题目二:将数组拆分加倍后合并输出
#!/bin/bash
function array {
local array1=(echo "$@")
local array2=(echo "$@")
local i
local elements=$[$#-1]
for (( i=0; i<=$elements; i++ ))
{
array2[$i]=$[ ${array1[$i]} 2 ]
}
echo "${array2[
]}"
}
wang=(1 2 3 4 5)
echo "初始数据为:${wang[]}"
kai=`echo ${wang[
]}<br/>result=array $kai<br/>echo "结果是:${result[*]}"<br/>![](http://i2.51cto.com/images/blog/201801/30/127f2176aaf433ae52d6201db2a8fae2.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)<br/>解析: 这道题目考察点是围绕着数组的处理来的,不仅将数组拆分成单个变量,也要做到将数组合并为整体输出。<br/>第三题:求阶乘<br/>#!/bin/bash<br/>function jj {<br/>if [ $1 -eq 1 ];then<br/>echo 1<br/>else<br/>local temp=$[$1-1]<br/>local result=jj $temp<br/>echo $[$result * $1]<br/>fi<br/>}<br/>read -p "请输入数字:" number<br/>result1=jj $number`
echo "结果是
解析:本题用来考察函数的递归,难度不大。
技术分享图片

shell编程练习

标签:log   括号   read   http   shel   结果   bin   element   注意   

原文地址:http://blog.51cto.com/13560258/2068574

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!