zoukankan      html  css  js  c++  java
  • 函数,脚本二次传参

    一、脚本

    #!/bin/bash
    #定义函数名fun1
    fun1 () {
    #定义函数阶层初始值
    factorial=1
    #使阶层循环
    for((i=1;i<=$1;i++))
    do
    #阶层公式
     factorial=$[$factorial*$i]
    done
    #输出阶层结果
    echo "$1的阶乘是:$factorial"                                                         
    }
    fun1 $1
    fun1 $2
    fun1 $3

    二、结果
    [root@localhost ~]# bash hanshu1.sh 4 5 6
    4的阶乘是:24
    5的阶乘是:120
    6的阶乘是:720

    三、原理

    1.一次传参

    bash hanshu1.sh 4 5 6
    传入4 5 6 三个参数-->fun1 $1:函数fun1只能接收参数$1(4)

                                       fun1 $2:  函数fun1只能接收参数$2(5)

                                       fun1 $2:  函数fun1只能接收参数$3(6)

    2、第二次传参

    fun1 $1:通过上次接收。。。此时它只有一个数4,相对位置为$1

          传给函数体for((i=1;i<=$1;i++))进行计算
    fun1 $2: 通过上次接收。。。此时它只有一个数5,相对位置为$1

       传给函数体for((i=1;i<=$1;i++))进行计算

    fun1 $3: 通过上次接收。。。此时它只有一个数6,相对位置为$1

       传给函数体for((i=1;i<=$1;i++))进行计算

  • 相关阅读:
    spring使用JdbcDaoSupport中封装的JdbcTemplate进行query
    javascript正则表达式
    Hi java新特性
    jdk 1.5
    jdk 1.6 & 1.7新特性
    core java 10~12(多线程 & I/O & Network网络编程)
    core java 8~9(GUI & AWT事件处理机制)
    core java 7 exception
    core java 5~6(OOP & 高级语言特征)
    响应式布局样例
  • 原文地址:https://www.cnblogs.com/zjz20/p/11352733.html
Copyright © 2011-2022 走看看