Maison  >  Article  >  développement back-end  >  Démarrage rapide : utilisez les fonctions du langage Go pour implémenter un système de gestion de bibliothèque simple

Démarrage rapide : utilisez les fonctions du langage Go pour implémenter un système de gestion de bibliothèque simple

王林
王林original
2023-07-30 09:18:02939parcourir

Démarrage rapide : utilisez les fonctions du langage Go pour implémenter un système de gestion de bibliothèque simple

Introduction :
Avec le développement continu du domaine de l'informatique, les besoins des applications logicielles deviennent de plus en plus diversifiés. En tant qu'outil de gestion commun, le système de gestion de bibliothèque est également devenu l'un des systèmes nécessaires pour de nombreuses bibliothèques, écoles et entreprises. Dans cet article, nous utiliserons les fonctions du langage Go pour implémenter un système simple de gestion de bibliothèque. Grâce à cet exemple, les lecteurs peuvent apprendre l'utilisation de base des fonctions du langage Go et comment créer un programme pratique.

1. Idées de conception :
Jetons d'abord un coup d'œil aux fonctions que le système de gestion de bibliothèque doit avoir :

  1. Ajouter des livres : ajoutez de nouvelles informations sur les livres au système.
  2. Supprimer le livre : supprimez le livre spécifié du système en fonction du numéro ou du nom du livre.
  3. Recherche de livres : recherchez les informations détaillées des livres dans le système en fonction du numéro du livre, du nom ou de l'auteur.
  4. Modifier le livre : modifiez les informations pertinentes du livre en fonction du numéro du livre.
  5. Afficher les livres : affichez tous les livres du système selon un certain format.

L'idée de conception est la suivante :

  1. Utilisez des structures pour représenter les informations du livre, notamment le numéro, le nom, l'auteur, l'éditeur, le prix, etc.
  2. Utilisez des tranches pour stocker les informations du livre dans le système.
  3. Définissez chaque fonction fonctionnelle pour qu'elle corresponde aux exigences ci-dessus.

2. Exemples de code :
Ce qui suit est un exemple de code d'utilisation des fonctions du langage Go pour implémenter un système de gestion de bibliothèque simple :

package main

import (
    "fmt"
)

// 图书结构体
type Book struct {
    Id     int
    Name   string
    Author string
    Press  string
    Price  float64
}

// 图书列表
var bookList []Book

// 添加图书
func addBook() {
    var book Book
    fmt.Println("请输入图书的编号:")
    fmt.Scanln(&book.Id)
    fmt.Println("请输入图书的名称:")
    fmt.Scanln(&book.Name)
    fmt.Println("请输入图书的作者:")
    fmt.Scanln(&book.Author)
    fmt.Println("请输入图书的出版社:")
    fmt.Scanln(&book.Press)
    fmt.Println("请输入图书的价格:")
    fmt.Scanln(&book.Price)

    bookList = append(bookList, book)
}

// 删除图书
func deleteBook() {
    var input string
    fmt.Println("请输入要删除的图书的编号或名称:")
    fmt.Scanln(&input)

    for i, book := range bookList {
        if book.Name == input || fmt.Sprintf("%v", book.Id) == input {
            bookList = append(bookList[:i], bookList[i+1:]...)
            fmt.Println("删除成功!")
            return
        }
    }

    fmt.Println("未找到要删除的图书!")
}

// 查找图书
func findBook() {
    var input string
    fmt.Println("请输入要查找的图书的编号、名称或作者:")
    fmt.Scanln(&input)

    for _, book := range bookList {
        if book.Name == input || fmt.Sprintf("%v", book.Id) == input || book.Author == input {
            fmt.Printf("编号:%v
名称:%v
作者:%v
出版社:%v
价格:%v
", book.Id, book.Name, book.Author, book.Press, book.Price)
            return
        }
    }

    fmt.Println("未找到相关图书!")
}

// 修改图书
func modifyBook() {
    var input string
    fmt.Println("请输入要修改的图书的编号:")
    fmt.Scanln(&input)

    for i, book := range bookList {
        if fmt.Sprintf("%v", book.Id) == input {
            fmt.Println("请输入新的图书名称:")
            fmt.Scanln(&bookList[i].Name)
            fmt.Println("请输入新的图书作者:")
            fmt.Scanln(&bookList[i].Author)
            fmt.Println("请输入新的图书出版社:")
            fmt.Scanln(&bookList[i].Press)
            fmt.Println("请输入新的图书价格:")
            fmt.Scanln(&bookList[i].Price)
            fmt.Println("修改成功!")
            return
        }
    }

    fmt.Println("未找到要修改的图书!")
}

// 展示图书
func showBooks() {
    fmt.Println("图书列表:")
    for _, book := range bookList {
        fmt.Printf("编号:%v
名称:%v
作者:%v
出版社:%v
价格:%v

", book.Id, book.Name, book.Author, book.Press, book.Price)
    }
}

// 主函数
func main() {
    for {
        fmt.Println("欢迎使用图书管理系统,请输入相应的操作序号:")
        fmt.Println("1. 添加图书")
        fmt.Println("2. 删除图书")
        fmt.Println("3. 查找图书")
        fmt.Println("4. 修改图书")
        fmt.Println("5. 展示图书")
        fmt.Println("6. 退出系统")

        var choice int
        fmt.Scanln(&choice)

        switch choice {
        case 1:
            addBook()
        case 2:
            deleteBook()
        case 3:
            findBook()
        case 4:
            modifyBook()
        case 5:
            showBooks()
        case 6:
            fmt.Println("感谢使用图书管理系统,再见!")
            return
        default:
            fmt.Println("输入有误,请重新输入!")
        }
    }
}

3. Résumé :
Cet article présente comment utiliser les fonctions du langage Go pour implémenter une bibliothèque simple système de gestion. Grâce à un exemple simple, les lecteurs peuvent apprendre l’utilisation de base et l’application pratique des fonctions du langage Go. Bien sûr, il ne s'agit que d'un simple système de gestion de bibliothèque. Si vous souhaitez implémenter des fonctions plus complexes, une extension et une optimisation supplémentaires sont nécessaires. J'espère que cet article pourra être utile aux lecteurs dans l'apprentissage et l'utilisation des fonctions du langage Go.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn