用GO语言在vscode中不用sql来实现一个简易客户管理系统的代码
时间: 2024-03-03 15:52:58 浏览: 83
好的,以下是一个使用GO语言在vscode中实现一个简易客户管理系统的代码,不需要使用SQL:
```go
package main
import (
"bufio"
"fmt"
"os"
"strings"
)
type Customer struct {
name string
address string
email string
}
var customers []Customer
func main() {
for {
fmt.Println("请选择操作:")
fmt.Println("1. 添加客户")
fmt.Println("2. 删除客户")
fmt.Println("3. 修改客户")
fmt.Println("4. 显示客户列表")
fmt.Println("5. 退出系统")
fmt.Print("请选择(1-5):")
reader := bufio.NewReader(os.Stdin)
input, _ := reader.ReadString('\n')
input = strings.TrimSpace(input)
switch input {
case "1":
addCustomer()
case "2":
deleteCustomer()
case "3":
updateCustomer()
case "4":
showCustomerList()
case "5":
fmt.Println("感谢使用客户管理系统!")
os.Exit(0)
default:
fmt.Println("您输入的操作有误,请重新选择!")
}
}
}
func addCustomer() {
fmt.Println("请输入客户信息:")
fmt.Print("姓名:")
reader := bufio.NewReader(os.Stdin)
name, _ := reader.ReadString('\n')
name = strings.TrimSpace(name)
fmt.Print("地址:")
address, _ := reader.ReadString('\n')
address = strings.TrimSpace(address)
fmt.Print("邮箱:")
email, _ := reader.ReadString('\n')
email = strings.TrimSpace(email)
customer := Customer{name, address, email}
customers = append(customers, customer)
fmt.Println("客户添加成功!")
}
func deleteCustomer() {
fmt.Println("请输入要删除的客户姓名:")
reader := bufio.NewReader(os.Stdin)
name, _ := reader.ReadString('\n')
name = strings.TrimSpace(name)
for i, customer := range customers {
if customer.name == name {
customers = append(customers[:i], customers[i+1:]...)
fmt.Println("客户删除成功!")
return
}
}
fmt.Println("未找到该客户,删除失败!")
}
func updateCustomer() {
fmt.Println("请输入要修改的客户姓名:")
reader := bufio.NewReader(os.Stdin)
name, _ := reader.ReadString('\n')
name = strings.TrimSpace(name)
for i, customer := range customers {
if customer.name == name {
fmt.Println("请输入新的客户信息:")
fmt.Print("姓名(留空表示不修改):")
name, _ := reader.ReadString('\n')
name = strings.TrimSpace(name)
if name != "" {
customer.name = name
}
fmt.Print("地址(留空表示不修改):")
address, _ := reader.ReadString('\n')
address = strings.TrimSpace(address)
if address != "" {
customer.address = address
}
fmt.Print("邮箱(留空表示不修改):")
email, _ := reader.ReadString('\n')
email = strings.TrimSpace(email)
if email != "" {
customer.email = email
}
customers[i] = customer
fmt.Println("客户修改成功!")
return
}
}
fmt.Println("未找到该客户,修改失败!")
}
func showCustomerList() {
fmt.Println("客户列表:")
for _, customer := range customers {
fmt.Printf("姓名:%s,地址:%s,邮箱:%s\n", customer.name, customer.address, customer.email)
}
}
```
这个程序实现了以下功能:
1. 添加客户
2. 删除客户
3. 修改客户
4. 显示客户列表
5. 退出系统
可以通过命令行交互的方式进行操作,客户信息保存在一个全局变量`customers`中。这个程序比较简单,仅作为参考。
阅读全文