Compare commits

...

22 Commits

@ -1,98 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created by Flowgorithm 3.4.2 (http://flowgorithm.org) -->
<svg xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" version="1.1" width="2448" height="2700">
<rect x="0" y="0" width="2448" height="2700" fill="#FFFFFF"/>
<g>
<polyline fill="none" stroke="#404040" stroke-width="9" stroke-dasharray="none" points="1152,288 1152,375"/>
<polygon fill="#404040" stroke="none" points="1152,396 1172,361 1131,361"/>
<polyline fill="none" stroke="#404040" stroke-width="9" stroke-dasharray="none" points="1152,2304 1152,2391"/>
<polygon fill="#404040" stroke="none" points="1152,2412 1172,2377 1131,2377"/>
<g>
<path fill="#F0E0FF" stroke="#9070A0" stroke-width="5" stroke-dasharray="none" d="M 936,144 A 72 72, 0, 0 0, 936 288 L 1368,288 A 72 72, 0, 0 0, 1368 144 Z"/>
<text x="1152" y="165" fill="#000000" font-family="Arial" font-size="32pt" text-anchor="middle" direction="ltr">
<tspan x="1152" dy="72" unicode-bidi="embed">DoReviseBook</tspan>
</text>
</g>
<g>
<path fill="#F0E0FF" stroke="#9070A0" stroke-width="5" stroke-dasharray="none" d="M 1008,2412 A 72 72, 0, 0 0, 1008 2556 L 1296,2556 A 72 72, 0, 0 0, 1296 2412 Z"/>
<text x="1152" y="2433" fill="#000000" font-family="Arial" font-size="32pt" text-anchor="middle" direction="ltr">
<tspan x="1152" dy="72" unicode-bidi="embed">End</tspan>
</text>
</g>
<g>
<polyline fill="none" stroke="#404040" stroke-width="9" stroke-dasharray="none" points="1152,612 1152,699"/>
<polygon fill="#404040" stroke="none" points="1152,720 1172,685 1131,685"/>
<polyline fill="none" stroke="#404040" stroke-width="9" stroke-dasharray="none" points="1152,864 1152,951"/>
<polygon fill="#404040" stroke="none" points="1152,972 1172,937 1131,937"/>
<g>
<path fill="#C04040" stroke="#602020" stroke-width="5" stroke-dasharray="none" d="M 684,396 L 576,612 L 1620,612 L 1728,396 Z"/>
<text x="1152" y="417" fill="#FFFFFF" font-family="Arial" font-size="32pt" text-anchor="middle" direction="ltr">
<tspan x="1152" dy="72" unicode-bidi="embed">Input</tspan>
<tspan x="1152" dy="72" unicode-bidi="embed"> &#26174;&#31034;&#20462;&#25913;&#22270;&#20070;&#21644;&#20462;&#25913;&#21738;&#26412;&#20070;&#65311;</tspan>
</text>
</g>
<g>
<path fill="#C0E0FF" stroke="#6080A0" stroke-width="5" stroke-dasharray="none" d="M 936,720 L 864,864 L 1368,864 L 1440,720 Z"/>
<text x="1152" y="741" fill="#000000" font-family="Arial" font-size="32pt" text-anchor="middle" direction="ltr">
<tspan x="1152" dy="72" unicode-bidi="embed">Input &#22270;&#20070;ID</tspan>
</text>
</g>
<g>
<polyline fill="none" stroke="#404040" stroke-width="9" stroke-dasharray="none" points="1404,1116 1764,1116 1764,1311"/>
<polygon fill="#404040" stroke="none" points="1764,1332 1784,1297 1743,1297"/>
<polyline fill="none" stroke="#404040" stroke-width="9" stroke-dasharray="none" points="1764,2124 1764,2268 1208,2268"/>
<polygon fill="#404040" stroke="none" points="1188,2268 1222,2288 1222,2247"/>
<polyline fill="none" stroke="#404040" stroke-width="9" stroke-dasharray="none" points="900,1116 612,1116 612,1311"/>
<polygon fill="#404040" stroke="none" points="612,1332 632,1297 591,1297"/>
<polyline fill="none" stroke="#404040" stroke-width="9" stroke-dasharray="none" points="612,1476 612,2268 1095,2268"/>
<polygon fill="#404040" stroke="none" points="1116,2268 1081,2247 1081,2288"/>
<g>
<path fill="#FFD0D0" stroke="#A07070" stroke-width="5" stroke-dasharray="none" d="M 1152,972 L 864,1116 L 1152,1260 L 1440,1116 Z"/>
<text x="1152" y="1065" fill="#000000" font-family="Arial" font-size="32pt" text-anchor="middle" direction="ltr">
<tspan x="1152" dy="72" unicode-bidi="embed">&#22270;&#20070;ID&#23384;&#22312;</tspan>
</text>
</g>
<g>
<polyline fill="none" stroke="#404040" stroke-width="9" stroke-dasharray="none" points="1764,1476 1764,1563"/>
<polygon fill="#404040" stroke="none" points="1764,1584 1784,1549 1743,1549"/>
<polyline fill="none" stroke="#404040" stroke-width="9" stroke-dasharray="none" points="1764,1728 1764,1815"/>
<polygon fill="#404040" stroke="none" points="1764,1836 1784,1801 1743,1801"/>
<g>
<path fill="#D0FFD0" stroke="#70A070" stroke-width="5" stroke-dasharray="none" d="M 1440,1332 L 1368,1476 L 2088,1476 L 2160,1332 Z"/>
<text x="1764" y="1353" fill="#000000" font-family="Arial" font-size="32pt" text-anchor="middle" direction="ltr">
<tspan x="1764" dy="72" unicode-bidi="embed">Output &#21407;&#22270;&#20070;&#25968;&#37327;</tspan>
</text>
</g>
<g>
<path fill="#C0E0FF" stroke="#6080A0" stroke-width="5" stroke-dasharray="none" d="M 1332,1584 L 1260,1728 L 2196,1728 L 2268,1584 Z"/>
<text x="1764" y="1605" fill="#000000" font-family="Arial" font-size="32pt" text-anchor="middle" direction="ltr">
<tspan x="1764" dy="72" unicode-bidi="embed">Input &#38656;&#35201;&#20462;&#25913;&#30340;&#22270;&#20070;&#25968;&#37327;</tspan>
</text>
</g>
<g>
<path fill="#C04040" stroke="#602020" stroke-width="5" stroke-dasharray="none" d="M 1368,1836 L 1224,2124 L 2160,2124 L 2304,1836 Z"/>
<text x="1764" y="1857" fill="#FFFFFF" font-family="Arial" font-size="32pt" text-anchor="middle" direction="ltr">
<tspan x="1764" dy="72" unicode-bidi="embed">Output Revised number</tspan>
<tspan x="1764" dy="72" unicode-bidi="embed"> :3&#13;</tspan>
<tspan x="1764" dy="72" unicode-bidi="embed">**********************</tspan>
</text>
</g>
</g>
<g>
<path fill="#C04040" stroke="#602020" stroke-width="5" stroke-dasharray="none" d="M 252,1332 L 180,1476 L 972,1476 L 1044,1332 Z"/>
<text x="612" y="1353" fill="#FFFFFF" font-family="Arial" font-size="32pt" text-anchor="middle" direction="ltr">
<tspan x="612" dy="72" unicode-bidi="embed">Output No such book</tspan>
</text>
</g>
<ellipse cx="1152" cy="2268" rx="36" ry="36" fill="#FFD0D0" stroke="#A07070" stroke-width="5"/>
<text x="1548" y="993" fill="#000000" font-family="Arial" font-size="32pt" text-anchor="middle" direction="ltr">
<tspan x="1548" dy="72" unicode-bidi="embed">True</tspan>
</text>
<text x="738" y="993" fill="#000000" font-family="Arial" font-size="32pt" text-anchor="middle" direction="ltr">
<tspan x="738" dy="72" unicode-bidi="embed">False</tspan>
</text>
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 6.4 KiB

@ -1,77 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created by Flowgorithm 3.4.2 (http://flowgorithm.org) -->
<svg xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" version="1.1" width="2052" height="2412">
<rect x="0" y="0" width="2052" height="2412" fill="#FFFFFF"/>
<g>
<polyline fill="none" stroke="#404040" stroke-width="9" stroke-dasharray="none" points="1188,288 1188,375"/>
<polygon fill="#404040" stroke="none" points="1188,396 1208,361 1167,361"/>
<polyline fill="none" stroke="#404040" stroke-width="9" stroke-dasharray="none" points="1188,2016 1188,2103"/>
<polygon fill="#404040" stroke="none" points="1188,2124 1208,2089 1167,2089"/>
<g>
<path fill="#F0E0FF" stroke="#9070A0" stroke-width="5" stroke-dasharray="none" d="M 1008,144 A 72 72, 0, 0 0, 1008 288 L 1368,288 A 72 72, 0, 0 0, 1368 144 Z"/>
<text x="1188" y="165" fill="#000000" font-family="Arial" font-size="32pt" text-anchor="middle" direction="ltr">
<tspan x="1188" dy="72" unicode-bidi="embed">DoSortBook</tspan>
</text>
</g>
<g>
<path fill="#F0E0FF" stroke="#9070A0" stroke-width="5" stroke-dasharray="none" d="M 1044,2124 A 72 72, 0, 0 0, 1044 2268 L 1332,2268 A 72 72, 0, 0 0, 1332 2124 Z"/>
<text x="1188" y="2145" fill="#000000" font-family="Arial" font-size="32pt" text-anchor="middle" direction="ltr">
<tspan x="1188" dy="72" unicode-bidi="embed">End</tspan>
</text>
</g>
<g>
<polyline fill="none" stroke="#404040" stroke-width="9" stroke-dasharray="none" points="1188,540 1188,627"/>
<polygon fill="#404040" stroke="none" points="1188,648 1208,613 1167,613"/>
<polyline fill="none" stroke="#404040" stroke-width="9" stroke-dasharray="none" points="1188,1332 1188,1419"/>
<polygon fill="#404040" stroke="none" points="1188,1440 1208,1405 1167,1405"/>
<g>
<path fill="#C04040" stroke="#602020" stroke-width="5" stroke-dasharray="none" d="M 864,396 L 792,540 L 1512,540 L 1584,396 Z"/>
<text x="1188" y="417" fill="#FFFFFF" font-family="Arial" font-size="32pt" text-anchor="middle" direction="ltr">
<tspan x="1188" dy="72" unicode-bidi="embed">Output Sort Books</tspan>
</text>
</g>
<g>
<polyline fill="none" stroke="#404040" stroke-width="9" stroke-dasharray="none" points="1440,792 1692,792 1692,1296 1244,1296"/>
<polygon fill="#404040" stroke="none" points="1224,1296 1258,1316 1258,1275"/>
<polyline fill="none" stroke="#404040" stroke-width="9" stroke-dasharray="none" points="936,792 648,792 648,987"/>
<polygon fill="#404040" stroke="none" points="648,1008 668,973 627,973"/>
<polyline fill="none" stroke="#404040" stroke-width="9" stroke-dasharray="none" points="648,1152 648,1296 1131,1296"/>
<polygon fill="#404040" stroke="none" points="1152,1296 1117,1275 1117,1316"/>
<g>
<path fill="#FFD0D0" stroke="#A07070" stroke-width="5" stroke-dasharray="none" d="M 1188,648 L 900,792 L 1188,936 L 1476,792 Z"/>
<text x="1188" y="741" fill="#000000" font-family="Arial" font-size="32pt" text-anchor="middle" direction="ltr">
<tspan x="1188" dy="72" unicode-bidi="embed">&#27809;&#26377;&#22270;&#20070;ID</tspan>
</text>
</g>
<g>
</g>
<g>
<path fill="#C04040" stroke="#602020" stroke-width="5" stroke-dasharray="none" d="M 252,1008 L 180,1152 L 1044,1152 L 1116,1008 Z"/>
<text x="648" y="1029" fill="#FFFFFF" font-family="Arial" font-size="32pt" text-anchor="middle" direction="ltr">
<tspan x="648" dy="72" unicode-bidi="embed">Output Book data empty</tspan>
</text>
</g>
<ellipse cx="1188" cy="1296" rx="36" ry="36" fill="#FFD0D0" stroke="#A07070" stroke-width="5"/>
<text x="1584" y="669" fill="#000000" font-family="Arial" font-size="32pt" text-anchor="middle" direction="ltr">
<tspan x="1584" dy="72" unicode-bidi="embed">True</tspan>
</text>
<text x="774" y="669" fill="#000000" font-family="Arial" font-size="32pt" text-anchor="middle" direction="ltr">
<tspan x="774" dy="72" unicode-bidi="embed">False</tspan>
</text>
</g>
<g>
<path fill="#C04040" stroke="#602020" stroke-width="5" stroke-dasharray="none" d="M 756,1440 L 468,2016 L 1620,2016 L 1908,1440 Z"/>
<text x="1188" y="1461" fill="#FFFFFF" font-family="Arial" font-size="32pt" text-anchor="middle" direction="ltr">
<tspan x="1188" dy="72" unicode-bidi="embed">Output</tspan>
<tspan x="1188" dy="72" unicode-bidi="embed"> *****************************&#13;</tspan>
<tspan x="1188" dy="72" unicode-bidi="embed"></tspan>
<tspan x="1188" dy="72" unicode-bidi="embed">Sort</tspan>
<tspan x="1188" dy="72" unicode-bidi="embed"> success&#13;</tspan>
<tspan x="1188" dy="72" unicode-bidi="embed"></tspan>
<tspan x="1188" dy="72" unicode-bidi="embed">*****************************</tspan>
</text>
</g>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

@ -7,17 +7,19 @@
本系统是自建设计项目,实现了图书管理中的借书和还书,查询书籍,以及书籍的添加、删除和显示所有书籍等功能。项目采用 C/C++ 语言编程实现,在 VS Code 集成开发环境IDE中用 GCC 进行编译。系统采用模块化设计,程序结构清晰,采用菜单驱动的命令行界面,操作便捷,能够用 CSV 格式读取和保存数据,通用性强,能够用图表展示数据,直观清楚。
下载地址: https://bdgit.educoder.net/pkcs2aq9m/text1.git
项目开发过程中采用 Kanban看板进行任务管理和分工协作并使用 Git 对程序代码和文档进行版本管理。任务分工情况如下:
|任务 |设计 |开发 |测试 |文档 |
|------ |-------|-------|--------|-------|
|Ca-Cb | 孙英皓 | 孙英皓 | 孙英皓 | 孙英皓 |
|C0-C2 | 杨腾泽 | 杨腾泽 | 杨腾泽 | 杨腾泽 |
|C3-C5 | 刘彩月 | 刘彩月 | 刘彩月 | 刘彩月 |
|C6-C8 | 李聪颖 | 李聪颖 | 李聪颖 | 李聪颖 |
| 任务 | 设计 | 开发 | 测试 | 文档 |
|-----------|----------|-----------|-------------|------------|
| Ca-Cb | 孙英皓 | 孙英皓 | 孙英皓 | 孙英皓 |
| C0-C2 | 杨腾泽 | 杨腾泽 | 杨腾泽 | 杨腾泽 |
| C3-C5 | 刘彩月 | 刘彩月 | 刘彩月 | 刘彩月 |
| C6-C8 | 李聪颖 | 李聪颖 | 李聪颖 | 李聪颖 |
每个成员的工作量(百分比):
|杨腾泽|孙英皓|李聪颖|刘彩月|
|-----|----|-----|-----|
| 25% | 25% | 25% | 25% |
|------|-----|------|-----|
| 25% | 25% | 25% | 25% |
## 关于图书管理系统
设计一个图书管理系统,要求采用命令行菜单界面进行交互,具备查书、借书、还书、打印书籍 、添加、删除等基本功能,能够以表格和图表形式展示数据,采用 CSV 格式保存数据。
@ -260,7 +262,9 @@ Sort success
其中查询、添加、修改和删除数据还会用到根据编号查询数据的方法find
上述各模块通过主程序main进行调用系统模块图如下。
各模块的主要功能如下:
![Outline](Graph\Outline.drawio.svg)
## main
系统主函数模块,显示菜单,根据用户选择的菜单命令,执行相关操作。
## init
@ -346,8 +350,7 @@ Step 2: 输入图书编号
Step 3: if 图书编号不存在,输出没有那样的书
Step 4: if 图书编号存在,提示原图书数量,输出需要修改的图书数量并输出修改成功信息
```
![修改图书](Graph\DoReviseBook.svg)
![修改图书](Graph\修改图书.png)
## DoSortBook
```
@ -355,4 +358,4 @@ Step 1: 提示排序图书
Step 2: if 没有图书编号 输出图书为空并输出排序成功
Step 3: if 有图书编号 直接输出排序成功
```
![排序图书](Graph\DoSortBook.svg)
![排序图书](Graph\排序图书.png)

@ -3,4 +3,8 @@
| 1 查书 | 2 借书 | 3 还书 | 4 打印 | 5 添加 |
| 6 删除 | 7 修改 | 8 排序 | 0 退出 |
————————————————————————————————————————————————————————————————
请选择:
请选择:
OK
Loading…
Cancel
Save