C++学生信息和考试成绩管理系统(一)

C++学生信息和考试成绩管理系统

第一章 工程介绍

第二章 用户登陆准备和登陆

第三章 用户的增删查改

第四章 考试创建&成绩的增改

第五章 成绩查询


第一章 工程介绍

  • C++学生信息和考试成绩管理系统
  • 前言
  • 一、实验结果/功能
    • (一)功能
    • (二)结果
  • 二、工程环境
  • 三、工程树
  • 四、代码讲解
    • (一)主函数:main.py
    • (二)根据性别批量生成姓名:generate_chinese_names.py
    • (三)批量生成ID相关信息:generate_id.py
    • (四)批量生成用户信息:generate_user_info.py
    • (五)批量生成考试记录:generate_exam.py
    • (六)生成结果

前言

理论上,这篇文章会很长,因为代码相对课程设计来讲是有点多,值得注意的是,这个工程有个很严重的BUG——内存泄漏,当然也是自我感觉,为什么呢,因为我写的时候很多时候是从一个函数进入另一个函数,出来的时候就容易忘记了释放,所以如果你只是写个毕设、课设什么的参考下就好了,不要太当真。还有就是因为没用多线程,处理数据杠杠的,慢。一千个学生数据处理大概要5s这样。

为什么不用智能指针就顺带说一下,刚开始我的想法是直接用C来写,嗯,是的没错是用C,但写着写着发现不对劲,好多东西很不方便,比如,我用结构体指针来搞,可搞着搞着越来越麻烦,后来索性换成了类对象或者模板,类似的还有很多,比如,也比如有时候用有时候是。所以也可以看到绝大多数时候我会保留C的写法,尽可能使用,为什么,因为喜欢。

C++代码我已经放在Github上,Python代码也在里面(这个代码是用来批量生成数据的),但我觉得写得还不好,有点随意,不过勉强能用,传送门:C-plus-plus-Student-Examination-Manage-System,当然我也可能上传到CSDN,这个不确定,因为就像我这种人也很穷,没有C币的,有时候想要下个资源就很麻烦(DdDd)。当然,最简单的,把这文章里所有代码收集起来也会得到近乎完整工程。另外,如果觉得这篇文章合适你就看,不然就是浪费时间。


一、实验结果/功能

为啥一上来就是实验结果为,万一你想要的功能和我写的不一样那你不就白打开 页了么,所以先比较下,功能适不适合你,适合就下滑,不适合就Ctrl + W

功能对应三种用户,管理员用户,懂的都懂;标准用户,就当老师账户吧,也不一定,反正是有部分管理权限的;只读用户,就当学生用户吧。其实这些功能可以随意组合,我也没啥需求,所以就靠感觉来写了,相对费时的是管理员功能,因为写的过程中需要封装各种函数,封装完了,另外两个用户也很好写了。

(一)功能


管理员功能

  1. 创建用户
  2. 删除用户
  3. 创建班级
  4. 删除班级
  5. 创建考试
  6. 更改成绩

标准用户功能

  1. 更改学
  2. 更改班级
  3. 查看成绩
  4. 更改成绩

只读用户功能

  1. 更改用户名
  2. 更改密码
  3. 统计考试情况

(二)结果

标准用户界面


四、代码讲解

以登陆管理员用户为例,按操作顺序进行代码说明。因为太多了,放上来太碍眼,如果你自信能看懂的话,也可以跳到最后,直接复制代码。

C++的代码都在后续文章中,这里放的是Python工程,创建适合本工程的伪数据。为什么要大批量创造这些呢,当然是为了方便调试,你总不会想着要把成绩和姓名一个个想好,然后输入进去吧!

(一)主函数:main.py

(二)根据性别批量生成姓名:generate_chinese_names.py

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年1月9日
下一篇 2021年1月9日

相关推荐