package main
import(
"fmt"
"math/rand"
"time"
)
//隨機生成十個整數保存到陣列,并倒序列印以及求平均值、最大值、最小值的下標、并查找里面是否有55
func main() {
var intArr [10]int
var sum int = 0
//隨機生成10個整數并存放再已宣告的陣列intArr中
rand.Seed(time.Now().UnixNano())
for i := 0; i < 10; i++ {
intArr[i] = rand.Intn(100) + 1
sum = sum + intArr[i]
}
fmt.Println(intArr)
fmt.Println("陣列的總和為",sum)
avg := float64(sum) / float64(len(intArr))//在求平均值的時候有可能會出現小數,所以把型別轉換成float64
fmt.Println("陣列的平均值為",avg)
//倒序列印
for i := 9; i >= 0; i-- {
fmt.Printf("intArr[%v] = %v\n", i, intArr[i])
}
//求最大值的下標
var maxIndex int = 0
for i :=0; i < 10; i++ {
if intArr[i] > intArr[maxIndex] {
maxIndex = i
}
}
fmt.Printf("最大值為:%v 下標為%v \n", intArr[maxIndex], maxIndex)
//求最小值下標
var minIndex int = 0
for i :=0; i < 10; i++ {
if intArr[i] < intArr[maxIndex] {
minIndex = i
}
}
fmt.Printf("最小值為:%v 下標為%v \n", intArr[minIndex], minIndex)
//求陣列中是否有55
for i := 0; i < 10; i++ {
if intArr[i] == 55 {
fmt.Printf("intArr[%v] = %v", i, intArr[i])
break
}else if i == (len(intArr) - 1) {
fmt.Println("陣列中不存在55這個數")
}
}
}
uj5u.com熱心網友回復:
問題是什么?求最小值的index 取的最大值的index,所以最小值錯了
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/116604.html
標籤:go語言
下一篇:誰會用cob寫一個冒泡排序
