大一上学期C++课程设计——学生成绩管理系统(QT项目)

这里是一个大一的萌新!仅做学习分享

工程文件在评论区置顶!!
近期整理了一下大一上学期的课程设计 告作为学习总结,使用的软件是Qt Creator,主界面效果如下图

图1 流程图

图3 新建QT工程

将弹出的对话框,选择主窗口mainwindow类,点击下一步,如图4所示。

图5 新建的主窗口框

3.2 界面设计

1、创建控件

图7 UI设计界面

1)在图6中左侧列表选择合适的控件拖拽到设计界面中间进行摆放。

2)在图6中“Buttons”按钮上单击鼠标左键,在对话框上的合适的位置上按下鼠标左键并拖动鼠标画出一个大小合适的下压式按钮。在按钮上单击鼠标右键,在弹出的快捷菜单中选择属性选项,此时也弹出Push Button属性对话框,如图7所示,在该对话框中输入控件的ID值和标题属性。

图9添加学生界面

2、连接变量和代码

1) 给按钮连接变量。在按钮上单击鼠标右键,在弹出菜单中选择转到槽,就可以给该窗口类添加一个槽函数来进行点击输入等事件的操作,如图9所示。

图11 新建的槽函数

创建成功后,在槽函数中写下实现相应功能的代码即可

3.3 关键功能的实现

1)学生信息的输入

2)查询功能的实现

3)删除和修改的实现

由于学 有唯一性,所以按照学 来对对应信息条目进行删除和修改,点击删除后弹框提醒确认删除后进行删除操作,点击修改则弹出修改子窗口进行信息的更改

删除功能:将对应信息作为字符串存起来,遍历存储信息的list容器进行覆盖存储文件,当遍历到要删除的信息时不存储即可

4)统计和排序的实现

当选择小中大学生时按默认顺序显示全部学生信息,在传入list容器时直接计算统计后显示各科平均分等,选择对应排序条件后点击排序按钮,将使用tableview类中自带的排序方法对数据进行排序

4 结论与心得体会

经过长时间的调试修改,得出结论该学生成绩管理系统符合题目所需要求

心得体会:花费了一整周时间来学习QT来设计自己的图形界面实现课设所需功能,最终实现用了自己喜欢的图案完成程序,真的很有成就感,也实现了自己在程序设计上的一个小目标——写出自己的第一个设计项目(虽然还比较简单)。

在编写过程中遇到非常多的困难,一般都是通过搜索对应问题和上CSDN看大佬的博客解决,掌握了学习程序设计遇到困难的解决办法、也收获了大量的编程知识

5 参考文献

[1] 谭浩强 C++程序设计(第3版)清华大学出版 2015

[2] Henrik-Yao C++的QT项目打包成独立可执行和发布的exe文件

CSDN 址:https://blog.csdn.net/qq_50216270/article/details/121374493

6 附录

6.1 调试 告

1、编译时提示错误:

E:CodeQTclassworkStudentManagermain.cpp:31: error: expected ‘;’ before ‘return’

return a.exec();//涓昏繍琛屽惊鐜

^

原因为分 是在中文输入法状态下输入,将其改为英文输入状态下了分 即可。

3、统计和排序显示时切换小中大学生会出现小学生也有地理历史成绩的情况,解决方法为添加一个槽函数,当下拉列表对应的文本改变时,清空tableview显示再继续进行显示信息

6.2 测试结果

主窗口如下

图13 结果图一

在主窗口点击统计和排序,在统计和排序中可看到存入的信息如图14(学生名:测试)

并且该窗口下方显示的即为统计得到的信息,处理成功

图15 结果图三

可以看到成功实现排序且左侧有子列显示当前所排序的项的成绩信息

3.在主窗口中点击查询和修改,选择学生就读情况,搜索对应信息学生名字“测试”

图17 结果图五

点击修改,弹出修改信息框进行修改如图17

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

上一篇 2022年11月26日
下一篇 2022年11月26日

相关推荐