From d2873a723fcdf326d332d3db30282db57d1fe196 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=88=90?= <1903771960@qq.com> Date: Sun, 21 May 2023 10:38:33 +0800 Subject: [PATCH 01/11] TU --- update_data.drawio | 52 ++++++++++++++++++++++++++++++++++++++++++++++ update_data.svg | 1 + 2 files changed, 53 insertions(+) create mode 100644 update_data.drawio create mode 100644 update_data.svg diff --git a/update_data.drawio b/update_data.drawio new file mode 100644 index 0000000..eb57ba4 --- /dev/null +++ b/update_data.drawio @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/update_data.svg b/update_data.svg new file mode 100644 index 0000000..5c215c8 --- /dev/null +++ b/update_data.svg @@ -0,0 +1 @@ +
update_data
update_data
输入学号
输入学号
输入姓名,成绩
输入姓名,成绩
学生不存在
学生不存在
结束
结束
Y
Y
N
N
Text is not SVG - cannot display
\ No newline at end of file From e159fc70a91701f1f00dd544efcc85e0e4c28143 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E6=84=8F=E4=BC=9F?= <1687396619@qq.com> Date: Sun, 21 May 2023 10:40:00 +0800 Subject: [PATCH 02/11] . --- README.md | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) diff --git a/README.md b/README.md index 4b0287d..3f1ef5d 100644 --- a/README.md +++ b/README.md @@ -238,4 +238,53 @@ a: No such file or directory 数据(query_data)、添加数据(add_data)、更新数据(update_data)、删除数据 (delete_data)、数据排序(sort_data)和生成图表(make_chart)等子模块。其中查询、添加、更 新和删除数据还会用到根据编号查询数据的方法(find)。 +上述各模块通过主程序(main)进行调用,系统模块图如下。 +![](main.svg) +各模块的主要功能如下: +### main +系统主函数模块,显示菜单,根据用户选择的菜单命令,执行相关操作。 +### init +系统初始化。 +### display_menu +显示菜单命令。 +## 详细设计 +针对概要设计 +### main +Step 1: 初始化 +Step 2: 根据用户选择的命令执行对应的操作 +Step 2.1: 显示菜单 +Step 2.2: 选择菜单命令 c +Step 2.3: if c == CMD_READ then 读取数据 +Step 2.4: if c == CMD_SAVE then 保存数据 +Step 2.5: if c == CMD_PRINT then 打印数据 +Step 2.6: +![](main.svg) +### save_data +Step 1: 输入文件名 +Step 2: 打开文件 +Step 3: if 打开文件失败 then 提示打开文件失败并结束 +Step 4: 将所有库存记录写入文件 +Step 5: 关闭文件 +![](save_data.svg) +### print_data +Step 1: for 0 to num_part-1 +Step 2: 打印学生成绩 + +![](print_data.svg) +### query_data +Step 1: for 0 to num_part-1 查询 +Step 2: 输入查询学号 +Step 3: 根据查询结果输出 + +![](query_data.svg) +### add_data +Step 1: for 0 to num_part-1 添加 +Step 2: 输入添加学号 +Step 3: if 成立则结束 else 输入学生名称、名次,添加分数, 并提示完成 + +![](add_data.svg) +### update_data +Step 1: for 0 to num_part-1 修改 +Step 2: 输入修改学号 +Step 3: if 不成立则结束 else 输出学生信息 \ No newline at end of file From 019357e16983be6bf061916d11e305ce7e0c0705 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E6=84=8F=E4=BC=9F?= <1687396619@qq.com> Date: Sun, 21 May 2023 10:50:39 +0800 Subject: [PATCH 03/11] . --- README.md | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 3f1ef5d..df7cd48 100644 --- a/README.md +++ b/README.md @@ -250,6 +250,7 @@ a: No such file or directory ## 详细设计 针对概要设计 ### main +``` Step 1: 初始化 Step 2: 根据用户选择的命令执行对应的操作 Step 2.1: 显示菜单 @@ -258,33 +259,40 @@ Step 2.3: if c == CMD_READ then 读取数据 Step 2.4: if c == CMD_SAVE then 保存数据 Step 2.5: if c == CMD_PRINT then 打印数据 Step 2.6: +``` ![](main.svg) ### save_data +``` Step 1: 输入文件名 Step 2: 打开文件 Step 3: if 打开文件失败 then 提示打开文件失败并结束 Step 4: 将所有库存记录写入文件 Step 5: 关闭文件 - +``` ![](save_data.svg) ### print_data +``` Step 1: for 0 to num_part-1 Step 2: 打印学生成绩 - +``` ![](print_data.svg) ### query_data +``` Step 1: for 0 to num_part-1 查询 Step 2: 输入查询学号 Step 3: 根据查询结果输出 - +``` ![](query_data.svg) ### add_data +``` Step 1: for 0 to num_part-1 添加 Step 2: 输入添加学号 Step 3: if 成立则结束 else 输入学生名称、名次,添加分数, 并提示完成 - +``` ![](add_data.svg) ### update_data +``` Step 1: for 0 to num_part-1 修改 Step 2: 输入修改学号 -Step 3: if 不成立则结束 else 输出学生信息 \ No newline at end of file +Step 3: if 不成立则结束 else 输出学生信息 +``` \ No newline at end of file From 072b1db89aa474b39b254addd6feb64c98b8f998 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E6=A2=A6=E7=90=A6?= <2260836370@qq.com> Date: Sun, 21 May 2023 11:02:15 +0800 Subject: [PATCH 04/11] 123 --- delete_data.drawio.svg | 180 +++++++++++++++++++++++++++++++++++++++++ delete_data.svg | 1 + 2 files changed, 181 insertions(+) create mode 100644 delete_data.drawio.svg create mode 100644 delete_data.svg diff --git a/delete_data.drawio.svg b/delete_data.drawio.svg new file mode 100644 index 0000000..39f91ed --- /dev/null +++ b/delete_data.drawio.svg @@ -0,0 +1,180 @@ + + + + + + + + + +
+
+
+ delete_data +
+
+
+
+ + delete_data + +
+
+ + + + + + +
+
+
+ 输入学号 +
+
+
+
+ + 输入学号 + +
+
+ + + + + + + + +
+
+
+ 学号存在? +
+
+
+
+ + 学号存在? + +
+
+ + + + + + +
+
+
+ 学号不存在 +
+
+
+
+ + 学号不存在 + +
+
+ + + + + + +
+
+
+ 删除学生信息 +
+
+
+
+ + 删除学生信息 + +
+
+ + + + +
+
+
+ Y +
+
+
+
+ + Y + +
+
+ + + + +
+
+
+ X +
+
+
+
+ + X + +
+
+ + + + +
+
+
+ 已更新 +
+
+
+
+ + 已更新 + +
+
+ + + + +
+
+
+ 结束 +
+
+
+
+ + 结束 + +
+
+ + +
+ + + + + Text is not SVG - cannot display + + + +
\ No newline at end of file diff --git a/delete_data.svg b/delete_data.svg new file mode 100644 index 0000000..d965db4 --- /dev/null +++ b/delete_data.svg @@ -0,0 +1 @@ +
delete_data
delete_data
输入学号
输入学号
学号存在?
学号存在?
学号不存在
学号不存在
删除学生信息
删除学生信息
Y
Y
X
X
已更新
已更新
结束
结束
Text is not SVG - cannot display
\ No newline at end of file From 0f1edc53f754fed82a6d136a447b5ea431577637 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E6=84=8F=E4=BC=9F?= <1687396619@qq.com> Date: Sun, 21 May 2023 11:07:29 +0800 Subject: [PATCH 05/11] . --- README.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index df7cd48..e6fd65c 100644 --- a/README.md +++ b/README.md @@ -295,4 +295,12 @@ Step 3: if 成立则结束 else 输入学生名称、名次,添加分数, Step 1: for 0 to num_part-1 修改 Step 2: 输入修改学号 Step 3: if 不成立则结束 else 输出学生信息 -``` \ No newline at end of file +``` +![](update_data.svg) +### delete_data +``` +Step 1: for 0 to num_part-1 删除 +Step 2: 输入删除学号 +Step 3: if 不成立则结束 else 删除 +``` +![](delete_data.svg) \ No newline at end of file From 64f7a737214f01b26f375bf55112b8a7003450d2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E6=A2=A6=E7=90=A6?= <2260836370@qq.com> Date: Sun, 21 May 2023 11:11:10 +0800 Subject: [PATCH 06/11] 123 --- sort_data.drawio.svg | 71 ++++++++++++++++++++++++++++++++++++++++++++ sort_data.svg | 1 + 2 files changed, 72 insertions(+) create mode 100644 sort_data.drawio.svg create mode 100644 sort_data.svg diff --git a/sort_data.drawio.svg b/sort_data.drawio.svg new file mode 100644 index 0000000..f279f6b --- /dev/null +++ b/sort_data.drawio.svg @@ -0,0 +1,71 @@ + + + + + + + + + +
+
+
+ sort_data +
+
+
+
+ + sort_data + +
+
+ + + + + + +
+
+
+ 读取文件 +
+
+
+
+ + 读取文件 + +
+
+ + + + + + +
+
+
+ 排序 +
+
+
+
+ + 排序 + +
+
+ +
+ + + + + Text is not SVG - cannot display + + + +
\ No newline at end of file diff --git a/sort_data.svg b/sort_data.svg new file mode 100644 index 0000000..62338b8 --- /dev/null +++ b/sort_data.svg @@ -0,0 +1 @@ +
sort_data
sort_data
读取文件
读取文件
排序
排序
Text is not SVG - cannot display
\ No newline at end of file From 4f4bf67447c7ce2430cf87e64e1afb6731e52bcd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E6=A2=A6=E7=90=A6?= <2260836370@qq.com> Date: Sun, 21 May 2023 11:14:33 +0800 Subject: [PATCH 07/11] 123 --- sort_data.drawio.svg | 29 +++++++++++++++++++++++++++-- sort_data.svg | 2 +- 2 files changed, 28 insertions(+), 3 deletions(-) diff --git a/sort_data.drawio.svg b/sort_data.drawio.svg index f279f6b..700e8b2 100644 --- a/sort_data.drawio.svg +++ b/sort_data.drawio.svg @@ -1,5 +1,10 @@ - - + + + + + + + @@ -59,6 +64,26 @@ + + + +
+
+
+ 排序完成 +
+
+
+
+ + 排序完成 + +
+
+ + + + diff --git a/sort_data.svg b/sort_data.svg index 62338b8..fba3eaf 100644 --- a/sort_data.svg +++ b/sort_data.svg @@ -1 +1 @@ -
sort_data
sort_data
读取文件
读取文件
排序
排序
Text is not SVG - cannot display
\ No newline at end of file +
sort_data
sort_data
读取文件
读取文件
排序
排序
排序完成
排序完成
Text is not SVG - cannot display
\ No newline at end of file From 6312f69cfb0b402544abda5a50f1a2d61205e0f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E6=A2=A6=E7=90=A6?= <2260836370@qq.com> Date: Sun, 21 May 2023 11:16:23 +0800 Subject: [PATCH 08/11] 123 --- sort_data.drawio.svg | 13 ++----------- sort_data.svg | 2 +- 2 files changed, 3 insertions(+), 12 deletions(-) diff --git a/sort_data.drawio.svg b/sort_data.drawio.svg index 700e8b2..9718941 100644 --- a/sort_data.drawio.svg +++ b/sort_data.drawio.svg @@ -1,10 +1,5 @@ - - - - - - - + + @@ -80,10 +75,6 @@
- - - - diff --git a/sort_data.svg b/sort_data.svg index fba3eaf..61a476f 100644 --- a/sort_data.svg +++ b/sort_data.svg @@ -1 +1 @@ -
sort_data
sort_data
读取文件
读取文件
排序
排序
排序完成
排序完成
Text is not SVG - cannot display
\ No newline at end of file +
sort_data
sort_data
读取文件
读取文件
排序
排序
排序完成
排序完成
Text is not SVG - cannot display
\ No newline at end of file From d42566dd1a5899d62ae9c63b67a1b3d479441898 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E6=A2=A6=E7=90=A6?= <2260836370@qq.com> Date: Sun, 21 May 2023 11:21:52 +0800 Subject: [PATCH 09/11] 1234 --- make_chart.drawio.svg | 71 +++++++++++++++++++++++++++++++++++++++++++ make_chart.svg | 1 + 2 files changed, 72 insertions(+) create mode 100644 make_chart.drawio.svg create mode 100644 make_chart.svg diff --git a/make_chart.drawio.svg b/make_chart.drawio.svg new file mode 100644 index 0000000..8e56dd1 --- /dev/null +++ b/make_chart.drawio.svg @@ -0,0 +1,71 @@ + + + + + + + + + +
+
+
+ make_chart +
+
+
+
+ + make_chart + +
+
+ + + + + + +
+
+
+ 读取文件 +
+
+
+
+ + 读取文件 + +
+
+ + + + + + +
+
+
+ 显示文件 +
+
+
+
+ + 显示文件 + +
+
+ +
+ + + + + Text is not SVG - cannot display + + + +
\ No newline at end of file diff --git a/make_chart.svg b/make_chart.svg new file mode 100644 index 0000000..a72fefb --- /dev/null +++ b/make_chart.svg @@ -0,0 +1 @@ +
make_chart
make_chart
读取文件
读取文件
显示文件
显示文件
Text is not SVG - cannot display
\ No newline at end of file From 4d97c78364e56780c82f1a5c6f22b0d7336416ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E6=A2=A6=E7=90=A6?= <2260836370@qq.com> Date: Sun, 21 May 2023 11:23:44 +0800 Subject: [PATCH 10/11] 1234 --- make_chart.drawio.svg | 18 +++++++++++++++++- make_chart.svg | 2 +- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/make_chart.drawio.svg b/make_chart.drawio.svg index 8e56dd1..a93a739 100644 --- a/make_chart.drawio.svg +++ b/make_chart.drawio.svg @@ -1,4 +1,4 @@ - + @@ -59,6 +59,22 @@
+ + + +
+
+
+ 结束 +
+
+
+
+ + 结束 + +
+
diff --git a/make_chart.svg b/make_chart.svg index a72fefb..a21d0de 100644 --- a/make_chart.svg +++ b/make_chart.svg @@ -1 +1 @@ -
make_chart
make_chart
读取文件
读取文件
显示文件
显示文件
Text is not SVG - cannot display
\ No newline at end of file +
make_chart
make_chart
读取文件
读取文件
显示文件
显示文件
结束
结束
Text is not SVG - cannot display
\ No newline at end of file From e4cb08cfcfe6ba19932aaf150ecd88b90af95e0e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E6=84=8F=E4=BC=9F?= <1687396619@qq.com> Date: Sun, 21 May 2023 15:19:07 +0800 Subject: [PATCH 11/11] . --- README.md | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index e6fd65c..0e38836 100644 --- a/README.md +++ b/README.md @@ -303,4 +303,16 @@ Step 1: for 0 to num_part-1 删除 Step 2: 输入删除学号 Step 3: if 不成立则结束 else 删除 ``` -![](delete_data.svg) \ No newline at end of file +![](delete_data.svg) +### sort_data +``` +Step 1: for 0 to num_part-1 排序 +Step 2: 按学生学号从小到大排序 +``` +![](sort_data.svg) +### make_chart +``` +Step 1: Step 1: for 0 to num_part-1 图表 +Step 2: 以图表方式显示库存记录 +``` +![](make_chart.svg) \ No newline at end of file