冒泡排序
package main
import "fmt"
func main() {
arrlist := [10]int{21,655,35,85,64,62,856,9748,963}
fmt.Println("原數組元素為:",arrlist)
for i:=0;i<len(arrlist)-1;i++ {
for j:=0;j<len(arrlist)-1;j++ {
if arrlist[j] > arrlist[j+1] {
arrlist[j],arrlist[j+1] = arrlist[j+1],arrlist[j]
}
}
}
fmt.Println("排序后的數組為:",arrlist)
}
// 結果
原數組元素為: [21 655 35 85 64 62 856 9748 963 0]
排序后的數組為: [0 21 35 62 64 85 655 856 963 9748]
// -----------------用戶交互輸入-------------------- //
package main
import "fmt"
func main() {
arrlist := [5]float64{}
for i:=0;i<len(arrlist);i++ {
var num float64
fmt.Printf("請輸入第 %d 個數字:",i+1)
fmt.Scan(&num)
arrlist[i] = num
}
fmt.Println("原數組內容為:",arrlist)
// 外層循環定義比較輪數
for i:=0;i<len(arrlist)-1;i++ {
// 內存循環定義每輪比較次數
for j:=0;j<len(arrlist)-1;j++ { // 或者:for j:=0;j<len(arrlist)-(i+1);j++
if arrlist[j] > arrlist[j+1] {
// 兩數交換
arrlist[j],arrlist[j+1] = arrlist[j+1],arrlist[j]
}
}
}
fmt.Println("排序后的數組為:",arrlist)
}
求最大值最小值
package main
import "fmt"
func main() {
var (
tmp int
num int
numbers [5]int
)
for i:=0;i<5;i++ {
fmt.Printf("請輸入第 %d 個數字:",i+1)
fmt.Scan(&num)
numbers[i] = num
}
fmt.Println("數據錄入完成!")
tmp=numbers[0]
for j:=0;j<5;j++ {
if numbers[j] > tmp { // 改成 < 就是求最小值
tmp = numbers[j]
} else {
continue
}
}
fmt.Println("最大值是:",tmp)
}
// 結果
請輸入第 1 個數字:5
請輸入第 2 個數字:3
請輸入第 3 個數字:6
請輸入第 4 個數字:7
請輸入第 5 個數字:8
數據錄入完成!
最大值是: 8