学习的golang的练习,推荐学习golang。https://www.liwenzhou.com
mian.go 文件
package main
import (
"fmt"
"os"
)
func showAction() {
fmt.Println("学生管理系统!")
fmt.Println("1. 添加学生信息")
fmt.Println("2. 编辑学生信息")
fmt.Println("3. 显示学生信息")
fmt.Println("4. 退出学生管理系统")
}
//getInput 获取输入信息
func getInput() *Student {
var (
name string
id int
ages int
)
fmt.Println("输入信息")
fmt.Print("输入name: ")
fmt.Scanf("%s\n", &name)
fmt.Print("输入id: ")
fmt.Scanf("%d\n", &id)
fmt.Print("输入ages: ")
fmt.Scanf("%d\n", &ages)
stu := newStudent(name, id, ages)
return stu
}
func main() {
// getInput()
allstu := newAllStudent()
var input int
showAction()
for {
// 1 显示菜单栏
fmt.Print("请输入指令:")
fmt.Scanf("%d\n", &input)
fmt.Println("输入的命名是:", input)
switch input {
case 1:
stu := getInput()
allstu.addStu(stu)
case 2:
stu := getInput()
allstu.setStu(stu)
case 3:
allstu.showStu()
case 4:
os.Exit(1)
}
}
}
actions.go 文件
package main
import "fmt"
//Student 学生信息结构体
type Student struct {
Name string
ID int
Age int
}
//AllStudent 管理表
type AllStudent struct {
alls []*Student
}
//newStudent 学生信息初始化
func newStudent(Name string, ID int, Age int) *Student {
return &Student{
Name: Name,
ID: ID,
Age: Age,
}
}
//newAllStudent 初使化表
func newAllStudent() *AllStudent {
return &AllStudent{
alls: make([]*Student, 0, 100),
}
}
//addStu 添加学生信息
func (s *AllStudent) addStu(newStu *Student) {
s.alls = append(s.alls, newStu)
}
//setStu 编辑学生信息
func (s *AllStudent) setStu(newStu *Student) {
for k, v := range s.alls {
if v.ID == newStu.ID {
s.alls[k] = newStu
return
}
}
fmt.Printf("学生ID不存在")
}
//showStu 显示学生信息
func (s *AllStudent) showStu() {
for _, val := range s.alls {
fmt.Printf("学生ID:%d 学生姓名:%s 学生年龄:%d", val.ID, val.Name, val.Age)
}
}
网友评论