C++ 重写了一个学生管理程序(作业题)

前几天看到CFAN论坛某位同学的作业帖子,决定帮一下,发帖子也是原先的版主,不理人家多不好。

拿到题目一看,是C++的,那位同学给了个源码,是论坛上另外一个同学写的,结构比较混乱,功能也没完善。

他原本的意思是让我修改下,结果我看那个结构,只能重构了。。这个很惭愧的说,不会C++,但是又答应帮人家了,于是拿出勇气来,床头放本Cpp primer,google准备着,vim开开。今天一整天的时间终于搞定了。

第一次写用了对象的C++程序,很多地方没有设置检查,溢出漏洞多多,虽然使用了类,但看起来很是面向过程的。毕竟第一次留个纪念。

更新信息: 感谢徐老师的意见,于是决定把搜索那块重新写下, 新建了一个搜索模板函数searchframe(),想查找什么内容,怎么比较,查询后是否修改可以由参数指定,增强了代码的复用性。而且可以为以后添加 更多的查询/修改功能提供了条件。不过写的水平不怎么高,代码有点晦涩 。。

————————————————————————————————————————————————————————

题目要求:

设计一个类CStudent,类中包含一个学生的基本数据如下:

编号,姓名,性别,年龄,数学成绩,计算机成绩,外语成绩。 并假设编号为整数,且从1号往后连续编码;姓名为字符串,性别为字符。

如: 1 LiPing m 18 89 98 94

请采用binary文件形式,并使用随机读写处理方式,对自定义CStudent类的对象数据进行存储与读写处理(即是说,总按具有连续编码的编号 num为“序”来对文件中的各对象数据进行随机读写处理)。并设计该类的成员函数,而且对输出运算符“<<”进行重载,使该运算符能够完成将 一个学生的信息输出到屏幕上。

要求成员函数完成以下功能:

(1) 从键盘输入一个学生的有关信息,并将它们存入到数据文件中(按编号来确定写出位置)。

(2) 按编号对学生信息进行检索并将检索结果显示在屏幕上。

(3) 按姓名对学生信息进行检索并将检索结果显示在屏幕上。

(4) 计算某编号学生的总成绩与平均成绩。

(5) 列出所有总成绩超过n分的性别为s同学的有关信息(n,s由用户从键盘输入)。

 

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 10
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值