如何用Go语言编写函数式学生管理系统?

2026-05-05 20:231阅读0评论SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计462个文字,预计阅读时间需要2分钟。

如何用Go语言编写函数式学生管理系统?

学生管理系统 + package mainimport ( fmt os ) /* 函数版学生管理系统,写一个系统可查看、新增、删除学生 */ var allStudent map[int64]student // 变量声明 type student struct { Id int64 name string } // newStudent是“

如何用Go语言编写函数式学生管理系统?

学生管理系统

package main import ( "fmt" "os" ) /* 函数版学生管理系统 写一个系统能够查看、新增、删除、学生 */ var ( allStudent map[int64]*student // 变量声明 ) type student struct { id int64 name string } // newStudent是student类型的构造函数 func newStudent(id int64, name string) *student { return &student{ id: id, name: name, } } func showAllStudent() { // 把所有的学生都遍历出来 for k, v := range allStudent { fmt.Printf("学号:%d 姓名:%s\n", k, v.name) } fmt.Println("查看所有学生成功!") } func addStudent() { // 向allStudent中添加一个新的学生 // 1. 创建一个新学生 // 1.1 获取用户输入 var ( id int64 name string ) fmt.Print("请输入学生学号:") fmt.Scanln(&id) fmt.Print("请输入学生姓名:") fmt.Scanln(&name) // 1.2 造学生(调用student的构造函数) newStu := newStudent(id, name) // 2. 追加到allStudent这个map中 allStudent[id] = newStu fmt.Println("新增学生成功!") } func deleteStudent() { // 1. 请用户输入要删除的学生的学号 var ( deleteId int64 ) fmt.Print("请输入您要删除的学生的学号:") fmt.Scanln(&deleteId) // 2. 去allStudent这个map中根据学号删除对应的键值对 delete(allStudent, deleteId) fmt.Println("删除学生成功!") } func main() { allStudent = make(map[int64]*student, 50) // 初始化(开辟内存空间) for { // 1. 打印菜单 fmt.Println("欢迎光临学生管理系统!") fmt.Println(` 1. 查看所有学生 2. 新增学生 3. 删除学生 4. 退出 `) fmt.Print("请输入您要执行的操作:") // 2. 等待用户选择要做什么 var choice int fmt.Scanln(&choice) fmt.Printf("您选择了%d这个选项!\n", choice) // 3. 执行对应的函数 switch choice { case 1: showAllStudent() case 2: addStudent() case 3: deleteStudent() case 4: os.Exit(1) default: fmt.Println("请输入正确的操作选项!") } } }

思考:把学员信息管理系统改写成方法版

本文共计462个文字,预计阅读时间需要2分钟。

如何用Go语言编写函数式学生管理系统?

学生管理系统 + package mainimport ( fmt os ) /* 函数版学生管理系统,写一个系统可查看、新增、删除学生 */ var allStudent map[int64]student // 变量声明 type student struct { Id int64 name string } // newStudent是“

如何用Go语言编写函数式学生管理系统?

学生管理系统

package main import ( "fmt" "os" ) /* 函数版学生管理系统 写一个系统能够查看、新增、删除、学生 */ var ( allStudent map[int64]*student // 变量声明 ) type student struct { id int64 name string } // newStudent是student类型的构造函数 func newStudent(id int64, name string) *student { return &student{ id: id, name: name, } } func showAllStudent() { // 把所有的学生都遍历出来 for k, v := range allStudent { fmt.Printf("学号:%d 姓名:%s\n", k, v.name) } fmt.Println("查看所有学生成功!") } func addStudent() { // 向allStudent中添加一个新的学生 // 1. 创建一个新学生 // 1.1 获取用户输入 var ( id int64 name string ) fmt.Print("请输入学生学号:") fmt.Scanln(&id) fmt.Print("请输入学生姓名:") fmt.Scanln(&name) // 1.2 造学生(调用student的构造函数) newStu := newStudent(id, name) // 2. 追加到allStudent这个map中 allStudent[id] = newStu fmt.Println("新增学生成功!") } func deleteStudent() { // 1. 请用户输入要删除的学生的学号 var ( deleteId int64 ) fmt.Print("请输入您要删除的学生的学号:") fmt.Scanln(&deleteId) // 2. 去allStudent这个map中根据学号删除对应的键值对 delete(allStudent, deleteId) fmt.Println("删除学生成功!") } func main() { allStudent = make(map[int64]*student, 50) // 初始化(开辟内存空间) for { // 1. 打印菜单 fmt.Println("欢迎光临学生管理系统!") fmt.Println(` 1. 查看所有学生 2. 新增学生 3. 删除学生 4. 退出 `) fmt.Print("请输入您要执行的操作:") // 2. 等待用户选择要做什么 var choice int fmt.Scanln(&choice) fmt.Printf("您选择了%d这个选项!\n", choice) // 3. 执行对应的函数 switch choice { case 1: showAllStudent() case 2: addStudent() case 3: deleteStudent() case 4: os.Exit(1) default: fmt.Println("请输入正确的操作选项!") } } }

思考:把学员信息管理系统改写成方法版