快速入門:使用Go語言函數實現簡單的圖書管理系統
引言:
隨著電腦科學領域的不斷發展,軟體應用的需求也越來越多樣化。圖書管理系統作為常見的管理工具,也成為許多圖書館、學校和企業必備的系統之一。在本文中,我們將使用Go語言函數來實作一個簡單的圖書管理系統。透過這個例子,讀者可以學習到Go語言中函數的基本用法以及如何建立一個實用的程式。
一、設計想法:
我們先來看看圖書管理系統需要具備哪些功能:
設計想法如下:
二、程式碼範例:
以下是使用Go語言函數實作簡單圖書管理系統的程式碼範例:
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("输入有误,请重新输入!") } } }
三、總結:
本文介紹了使用Go語言函數實作簡單的圖書管理系統的方法。透過一個簡單的範例,讀者可以學習到Go語言函數的基本使用方法和實際應用。當然,這只是一個簡單的圖書管理系統,如果要實現更複雜的功能,還需要進一步的擴展和最佳化。希望本文能對讀者在學習和使用Go語言函數上有一定的幫助。
以上是快速入門:使用Go語言函數實現簡單的圖書管理系統的詳細內容。更多資訊請關注PHP中文網其他相關文章!