使用go语言编写函数func1,为一个班级的一次考试创建映射类型,键为学号,值为分数,寻找分数最高的同学,并输出他们的学号。 编写函数func2,找出100以内能被7整除或者能被9整除的正整数并打印结果
时间: 2024-12-25 19:34:01 浏览: 16
### 函数 `func1` 和 `func2` 的实现
#### 函数 `func1`
```go
package main
import (
"fmt"
)
// func1 创建一个映射类型,键为学号,值为分数,寻找分数最高的同学,并输出他们的学号。
func func1() {
scores := map[string]int{
"10110": 92,
"10113": 87,
"10114": 65,
"10117": 92,
"10111": 88,
"10119": 92,
}
maxScore := -1
var topStudents []string
for studentID, score := range scores {
if score > maxScore {
maxScore = score
topStudents = []string{studentID}
} else if score == maxScore {
topStudents = append(topStudents, studentID)
}
}
fmt.Println("最高分数是:", maxScore)
fmt.Println("获得最高分数的同学学号是:", topStudents)
}
func main() {
func1()
}
```
#### 函数 `func2`
```go
package main
import (
"fmt"
)
// func2 找出100以内可以被7整除或者可以被9整除的正整数并打印结果。
func func2() {
for i := 1; i <= 100; i++ {
if i%7 == 0 || i%9 == 0 {
fmt.Println(i)
}
}
}
func main() {
func2()
}
```
### 解释
1. **函数 `func1`**:
- 使用一个映射 `scores` 来存储学号和对应的分数。
- 遍历映射,找到最高分数,并记录所有达到该分数的学生学号。
- 最后输出最高分数和对应的学生学号。
2. **函数 `func2`**:
- 使用一个循环从1到100遍历每个数字。
- 检查每个数字是否能被7或9整除,如果是,则打印该数字。
### 运行方法
将上述代码分别保存为 `main.go` 文件,并在 Go 环境中运行:
```sh
go run main.go
```
这将分别执行 `func1` 和 `func2`,并输出相应的结果。
阅读全文