linux与AIX中简单求与公式.docVIP

  • 7
  • 0
  • 约3.01万字
  • 约 4页
  • 2017-07-30 发布于河南
  • 举报
linux与AIX中简单求与公式

求和的方法 一 while循环 $ cat while sum=0 i=1 while [[ $i -le 100 ]] do sum=$(expr $sum + $i ) i=$(expr $i + 1 ) done echo 1+2+3+....+100=$sum $ ksh while 1+2+3+....+100=5050 评: 1 引用变量注意后空格 2 不能用号用-le代替,不同c语言 二 for循环 $ cat for1 sum=0 for i in 1 2 3 4 do sum=$(expr $sum + $i ) done echo 1+2+..+4=$sum $ ksh for1 1+2+..+4=10 修改 $ cat for1 sum=0 for i in [ 1 - 4 ] do sum=$(expr $sum + $i ) done echo 1+2+..+4=$sum $ ksh for1 expr: 0402-046 A specified operator requires numeric parameters. expr: 0402-050 Syntax error. expr: 0402-050 Syntax error. expr: 0402-050 Syntax error. expr: 0402-050 Syntax error. 1+2+..+4= 为什么?集中在多个变量中 修改 $ cat for sum=0 for i in 1 do if [[ $i -le 100 ]] then sum=$(expr $sum + $i ) i=$(expr $i + 1 ) else exit fi done echo 1+2+3+....+100=$sum $ ksh for 1+2+3+....+100=1 修改 $ cat for sum=0 for i in 1 do if [[ $i -le 100 ]] then sum=$(expr $sum + $i ) i=$(expr $i + 1 ) return i else exit fi done echo 1+2+3+....+100=$sum $ ksh for $ 三 until $ cat until sum=0 i=1 until [[ $i -gt 100 ]] do sum=$(expr $sum + $i ) i=$(expr $i + 1 ) done echo 1+2+3+....+100=$sum $ ksh until 1+2+3+....+100=5050 四 扩展 $ cat sum echo please input the first number n1 : read n1 echo please input the second number n2 : read n2 sum=0 while [[ $n1 -le $n2 ]] do sum=$(expr $sum + $n1 ) n1=$(expr $n1 + 1 ) done echo n1+....+n2=$sum $ ksh sum ksh: sum: 0403-006 Execute permission denied. $ chmod +x sum $ sum ^Z[2] + Stopped (SIGTSTP) sum $ ksh sum ksh: sum: 0403-006 Execute permission denied. 为什么可执行权限会被否认?ksh?

文档评论(0)

1亿VIP精品文档

相关文档