go语言编程之——可变参数

package main

import "fmt"

func main() {
   1. 传n个成绩
   //sum , avg , count := getScore(12,46,17,79,100)
   //fmt.Printf("学生公用%d门成绩,总成绩为%.2f ,平均成绩为%.2f", count, sum ,avg)
   2.传入一个切片
   //scores := []float64{12,46,17,79,100}
   //sum , avg , count = getScore(scores...)
   //fmt.Printf("学生公用%d门成绩,总成绩为%.2f ,平均成绩为%.2f", count, sum ,avg)

   //接下来再传入一个string类型的参数:当可变参数有多个类型的参数的时候,只能有一个可变参数,可变参数作为lastest parameter
   scores := []float64{12,46,17,79,100}
   sum , avg , count, user  := getScore2("lucy",scores...)
   fmt.Printf("学生%s共有%d门成绩,总成绩为%.2f ,平均成绩为%.2f",user, count, sum ,avg)

}

func getScore(scores ... float64) (sum float64, avg float64, count int) {

    for _, score := range scores{
       sum += score
       count ++
   }
   avg = sum /float64(count)
   return

}

func getScore2(name string , scores ...float64)(sum float64, avg float64, count int, user string){

    user = name
    for _,score := range scores{
      sum += score
      count ++
    }
     avg = sum/float64(count)
   return
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值