当前位置:网站首页>我的Go+语言初体验——祝福留言小系统,让她也可以感受到你的祝福
我的Go+语言初体验——祝福留言小系统,让她也可以感受到你的祝福
2022-07-30 04:15:00 【m0_54861649】
?? 小 木 再 探 G O + extcolor{Orange}{小木再探GO+} 小木再探GO+
?? 前 段 时 间 看 了 一 下 G O + , 也 成 功 将 环 境 等 一 系 列 搭 建 起 来 extcolor{green}{前段时间看了一下GO+,也成功将环境等一系列搭建起来} 前段时间看了一下GO+,也成功将环境等一系列搭建起来??
?? 相 信 有 很 多 小 伙 伴 刚 上 大 学 的 时 候 老 师 期 末 会 让 做 个 小 系 统 啥 的 extcolor{Brown}{相信有很多小伙伴刚上大学的时候老师期末会让做个小系统啥的 } 相信有很多小伙伴刚上大学的时候老师期末会让做个小系统啥的??
?? 那 么 这 不 正 好 是 个 小 素 材 可 以 学 习 嘛 , 最 近 呢 也 是 考 试 频 繁 啊 extcolor{green}{那么这不正好是个小素材可以学习嘛,最近呢也是考试频繁啊} 那么这不正好是个小素材可以学习嘛,最近呢也是考试频繁啊??
?? 四 六 级 , 考 研 , 期 末 等 等 ! ! ! 所 以 我 就 想 着 做 一 个 祝 福 留 言 系 统 extcolor{Brown}{四六级,考研,期末等等!!!所以我就想着做一个祝福留言系统} 四六级,考研,期末等等!!!所以我就想着做一个祝福留言系统??
?? 博 主 第 一 次 用 G O + 尝 试 做 系 统 , 还 请 各 位 大 佬 指 教 extcolor{Orange}{博主第一次用GO+尝试做系统,还请各位大佬指教} 博主第一次用GO+尝试做系统,还请各位大佬指教??
GO+征文也快结束了,但是我希望这仅仅是个开始,而不是结束??
祝福每一位都可以如愿,考试会的全对,蒙的全对??
GO+祝福留言系统
环境搭建
之前讨论过关于GO+的环境搭建,这里就不在赘述了,如果有需要可以查看下面的文章。
关于GO+的环境搭建
GO+版的祝福语管理系统
前期想法
万变不离其宗,我们在有想法之后要做的就是构思,前期做好,后期就会变得非常的简单。
每一条祝福语都拥有自己唯一的id,同样拥有祝福者,幸运儿(被祝福的人),以及祝福的话语。
界面展示
整体界面

增加祝福信息

每一次运行之后都会有提示框,可以继续进行操作
修改操作
此处修改可以对单个信息,也可以对全部的信息进行修改,接下来我会依次给大家展示:
> 1. 修 改 幸 运 儿 extcolor{OrangeRed}{–> 1.修改幸运儿} >1.修改幸运儿??
成功之后我们再查询:
> 2. 修 改 祝 福 者 : extcolor{OrangeRed}{–> 2.修改祝福者:} >2.修改祝福者:??
> 3. 修 改 祝 福 的 话 语 extcolor{OrangeRed}{–> 3.修改祝福的话语} >3.修改祝福的话语??
> 4. 修 改 全 部 extcolor{OrangeRed}{–> 4.修改全部} >4.修改全部??
删除操作
为了更好的查看,我们再增加一个,然后进行删除操作
> 增 + 查 : extcolor{OrangeRed}{–> 增+查:} >增+查:??
> 删 + 查 : extcolor{OrangeRed}{–> 删+查:} >删+查:??
退出

到此我们简单的祝福留言小系统就完成了??
源代码
package main
import (
"fmt"
"os"
)
// 储存祝福信息
var Mgr wishMessages
//定义保存祝福信息的结构体
type wishMessages struct {
wish map[uint]*wish
}
//定义祝福话语的结构体
type wish struct {
id uint //祝福信息id
lucky string //被祝福的幸运儿
wisher string //祝福者
message string //祝福的话语
}
//查询所有祝福信息
func (w wishMessages) showAllWishs() {
println("----所有祝福信息如下----
")
println("ID", "幸运儿", "祝福者", "祝福的话")
for i, v := range w.wish {
println(i, v.lucky, v.wisher, v.message)
}
println("--------------------------")
}
//增加祝福信息
func (w wishMessages) addWish() {
println("请输入新祝福id:")
var (
wishID uint
wishLucky string
wishWisher string
wishMessage string
)
fmt.Scanln(&wishID)
_, ok := w.wish[wishID]
if ok {
println("此祝福话语存在!")
return
}
println("请输入幸运儿:")
fmt.Scanln(&wishLucky)
println("请输入祝福者:")
fmt.Scanln(&wishWisher)
println("请输入新的祝福的话语:")
fmt.Scanln(&wishMessage)
w.wish[wishID] = &wish{wishID, wishLucky, wishWisher, wishMessage}
}
//修改祝福的信息
func (w wishMessages) updateWish() {
println("请输入要修改祝福话的id:")
var (
wishID uint
wishLucky string
wishWisher string
wishMessage string
num int
)
fmt.Scanln(&wishID)
_, ok := w.wish[wishID]
if !ok {
println("查无此祝福话!")
return
}
println("请输入要修改祝福的哪项信息:
1.幸运儿;2.祝福者,3.祝福的话语,4.所有信息
请输入序号:")
fmt.Scanln(&num)
switch num {
case 1:
println("请输入要修改幸运儿:")
fmt.Scanln(&wishLucky)
w.wish[wishID].lucky = wishLucky
case 2:
println("请输入要修改祝福者:")
fmt.Scanln(&wishWisher)
w.wish[wishID].wisher = wishWisher
case 3:
println("请输入要修改祝福的话语:")
fmt.Scanln(&wishMessage)
w.wish[wishID].message = wishMessage
case 4:
println("请输入要修改幸运儿:")
fmt.Scanln(&wishLucky)
println("请输入要修改祝福者:")
fmt.Scanln(&wishWisher)
println("请输入要修改祝福的话语:")
fmt.Scanln(&wishMessage)
w.wish[wishID] = &wish{
lucky: wishLucky,
wisher: wishWisher,
message: wishMessage,
}
}
println("----修改成功----")
}
//删除祝福的信息
func (w wishMessages) delWish() {
println("请输入要修改祝福话语的id:")
var wishID uint
fmt.Scanln(&wishID)
delete(w.wish, wishID)
println("----删除成功----")
}
Mgr = wishMessages{
wish: make(map[uint]*wish, 100),
}
println("-------------欢迎使用祝福信息管理系统-------------")
for {
println(`
1.查看所有祝福信息
2.增加祝福信息
3.修改祝福信息
4.删除祝福信息
5.退出程序
------------------------------------------
`)
println("请输入上面对应的序号来选择对应的操作:")
var wishID uint
fmt.Scanln(&wishID)
switch wishID {
case 1:
Mgr.showAllWishs()
case 2:
Mgr.addWish()
case 3:
Mgr.updateWish()
case 4:
Mgr.delWish()
case 5:
os.Exit(1)
default:
println("输入错误,请重新输入!")
}
}
参考资料:
曲鸟大佬的结合GO+的学生管理系统
写在最后
希望大家都可以愿望成真,如果想对他人祝福,欢迎留言??
希望她可以一研为定??
边栏推荐
- Charles 替换 接口响应信息
- 逆向分析实战2
- Anti-shake and throttling
- The underlying mechanism of the function
- ospf map
- SQLSERVER merges subquery data into one field
- 【C进阶】数组传参与函数指针
- day10--install mysql on linux
- Mini Program Graduation Works WeChat Points Mall Mini Program Graduation Design Finished Product (8) Graduation Design Thesis Template
- STM32 SPI+WM8978 voice loopback
猜你喜欢

Mini Program Graduation Works WeChat Second-hand Trading Mini Program Graduation Design Finished Works (6) Question Opening Reply PPT

Pytorch framework learning record 2 - the use of TensorBoard

在麒麟V10操作系统上安装MySQL数据库
Send it to your friends and let TA treat you to fried chicken!

Mini Program Graduation Works WeChat Second-hand Trading Mini Program Graduation Design Finished Works (3) Background Functions

After 5 years of Ali internship interview~

【转】Swift 中的面向协议编程:引言

SQL introduction of the first lecture -- MySQL 8.0.29 installation tutorial (Windows 64 - bit)

ospf 导图

Azure 开发者新闻快讯丨开发者7月大事记一览
随机推荐
Mini Program Graduation Works WeChat Second-hand Trading Mini Program Graduation Design Finished Works (4) Opening Report
Mini Program Graduation Works WeChat Second-hand Trading Mini Program Graduation Design Finished Works (3) Background Functions
【C语言】程序环境和预处理
【转】Swift 中的面向协议编程:引言
【翻译】Envoy Fundamentals,这是一个培训课程,使人们能够更快地采用Envoy Proxy。...
逆向理论知识3【UI修改篇】
Hongji was once again shortlisted in the Gartner 2022 RPA Magic Quadrant and achieved a significant jump in position
Let's learn the layout components of flutter together
sqlmap use tutorial Daquan command Daquan (graphics)
Pytorch框架学习记录7——卷积层
Mini Program Graduation Works WeChat Points Mall Mini Program Graduation Design Finished Product (2) Mini Program Function
Smart answer function, CRMEB knowledge payment system must have!
Chapter 51 - Knowing the request header parameter analysis【2022-07-28】
Mini Program Graduation Works WeChat Second-hand Trading Mini Program Graduation Design Finished Work (2) Mini Program Function
Go书籍大全-从初级到高级以及Web开发
Charles replaces the interface response information
Redis server启动后会做哪些操作?
ospf map
权值线段树+线段树分裂/合并+CF1659D
JQ源码分析(环境处理)