c语言学生作业成绩管理系统,假期作业:学生成绩管理系统(C语言版本)...

学生成绩管理系统(C语言版本)

某班人数最多不超过30人,具体人数由键盘输入。学生的基本信息包括:学号、姓名、性别、出生日期(年、月、日)、政治面貌、数学、语文、英语三门课成绩、平均分。编程实现如下菜单驱动的学生成绩管理系统。

数据结构要求如下:

⑴ 学生的基本信息要求使用结构体类型的变量保存;

⑵ 出生日期也为结构体类型;

⑶ 政治面貌采用共用体类型,政治面貌的值有两种:不是党员、是党员。如果是党员,则还要记录入党年份。具体情况如下所示:

政治面貌: 不是党员

政治面貌: 是党员,入党年份

学生管理系统要实现的功能如下:

⑴ 读入每个学生的基本信息,并计算每个学生的平均分;

要求:a. 此函数要求以结构体数组作为函数参数;

b. 既可以从键盘读入学生的人数和基本信息。也可以从文件读入学生的基本信息。若程序是第一次运行,则学生信息必须从键盘读入。若程序不

是第一次运行,则学生信息可以从文件读入。

⑵ 计算某门课的平均分,将低于平均分的人数作为函数值返回主函数,将低于平均分的学生基本信息存储到形参数组中返回给主函数。

要求:a. 函数具有通用性;

b. 函数有返回值,返回值为低于平均分的人数;

c. 低于平均分的学生基本信息,通过形参数组返回主函数; d. 在主函数中输出低于平均分的学生的基本信息.

⑶ 按照某门课成绩或学生平均分排序。

要求:a. 函数具有通用性,既可以按某门课成绩排序,也可以按平均分排序; b. 函数具有通用性,既可以升序也可以降序排序,使用函数指针作为参数; c. 函数参数有多个,必须包括指向结构体数组的指针;

d. 函数内部的排序,要求使用指针实现。

⑷ 按照学生姓名的字典顺序排序

要求:a. 函数参数为指向结构体数组的指针;

b. 函数内部的排序,要求使用指针实现。

⑸ 按姓名查找学生基本信息

要求:a. 同时可以查找多个人。例如可以查找系统中有无张三、李四、王五这三个

人。多个人的名字在主函数中存储在二维字符数组中;

b. 函数返回值为查找到的人数;

c. 查找的学生信息通过形参数组返回主函数;

d. 函数参数中包括行指针,接收要查找的学生姓名信息。

⑹ 按优秀(90~100)、良好(80~89)、中等(70~79)、及格(60~69)、不及格(0~

59)5个类别,对某门课分别统计每个类别的人数及所占百分比。

要求:a. 函数具有通用性;

b. 结构体数组作为函数参数。

⑺ 将所有学生信息保存到文件中

要求:a. 函数参数为指向结构体数组的指针。

⑻ 创建链表保存学生基本信息。

要求:a. 学生信息既可以从数组中读取也可以从文件中读取;

b. 链表可以是双向链表也可以是单向链表;

c. 函数返回链表的头指针。

⑼ 按学号从小到大对链表进行排序

⑽ 查找某门课成绩最高的学生的基本信息,某门课成绩最高的可能不只一名学生 要求:a. 成绩最高的人数通过函数返回;

b. 成绩最高的学生基本信息通过指针数组返回;

c. 函数具有通用性。

⑾ 查找某个年龄段的学生人数和学生基本信息。

要求:a. 查找的人数通过函数返回;

b. 学生基本信息通过指针数组返回;

c. 函数具有通用性。

⑿ 按姓名查找学生基本信息,对学生信息进行修改后保存;

要求:a. 函数参数均为指针;

b. 若找到并修改成功,通过指针返回修改后的学生姓名;

c. 若要找的学生不存在,返回空串。

⒀ 按学号删除学生信息;

要求:a. 函数返回链表的头指针;

b. 学号通过参数传入。

⒁ 对已按学号排好序的链表,插入一名新的学生信息,要求插入后依然有序; 要求:a. 函数返回链表的头指针。

⒂ 将链表中的学生信息保存到文件中。

要求:a. 信息存入文件中后,清空链表。

界面要求如下:

⑴ 界面要求美观,大方。

⑵ 具有良好的交互性,必要的提示语句和输出语句。

⑶ 菜单简洁明了。

性能要求如下:

⑴ 函数编写考虑程序的通用性,尽量做到高内聚,低耦合。

⑵ 函数编写考虑程序的健壮性,如果有错误输入,不要造成程序崩溃。

⑶ 函数编写考虑避免发生缓冲区溢出、内存泄漏、非法内存访问的错误。

要求程序运行后,先显示菜单,并提示用户输入选项,然后根据用户输入的选项执行相应的操作,要求程序设计采用自顶向下逐步求精的方法,进行模块化程序设计以及增量测试。

同学们:

首先祝大家新年快乐!希望大家在新的一年中能有更大的进步!

我对pascal 的学习情况进行一个总结,值得肯定的说,大家这学期以来学习都很刻苦,很多同学刻苦的精神让我感动。能和这样一群优秀的学生一起学习和工作,我也很自豪。大

家的pascal 成绩,考的都很不错。70分以上的同学的成绩我已经放到了群共享中,其他同学的成绩我都单独通知了。希望考的好的同学不要骄傲,考的不好的同学不要气馁。考试成绩并不能全面的说明一个人的能力。例如贾昌宇同学考试成绩只有69分,但是他用链表实现的学生成绩管理系统有很多创新的地方,有的地方比老师做得还好,这说明了两点:一是他有自学能力,二是他有创新的精神。这两点对于我们来说是及其重要的。当我们毕业之后,老师教给我们的知识我们可能大部分都会忘掉,但是如果我们具备了自学能力,具备了创新精神,那将是我们大学生活获得的最大财富,也是我们人生取之不竭,用之不尽的最大财富。所以即使贾昌宇考试的成绩不是很理想,但我依然认为他是一个优秀的学生。

我把下学期用C 语言实现的学生成绩管理系统的要求写在上面了,可能开学后某些功能的要求会有微小的调整,但基本的功能是不会改变的。关于C 语言的知识我们讲的很少,所以这就要靠大家自己在假期进行自学了,通过自学来系统掌握C 语言的基本语法和使用方法。这是培养大家自学能力的一个非常好的挑战,我想大部分同学都能完成这样的自我挑战,我对你们很有信心!当然开学之后,我会对一些重点和难点的地方会给大家补一补,但是前提是大家在假期已经对C 语言进行了系统的自学。

希望大家能够在假期中借C 语言的书来自学,我对每个函数的要求都很具体,所以你们可以针对我的要求进行C 语言的自学。此外也可以不考虑具体的要求,先从功能的角度去实现它,然后再按照具体的要求去修改。

放假后,很多同学已经开始学习C 语言了,像马鹏,贾昌宇等,还有贺迎春,我们假期实在太长了,我希望大家劳逸结合,利用这40多天的假期,把C 语言系统学习一遍,我相信大家会充分体会到挑战自我的乐趣!

这个系统我们会在2012年3月15日就开始验收,如果做的不合格,就会要求返回重新做,那就会验收多次,直到达到标准为止,验收截止日期:2012年4月1日。所以希望大家假期能系统自学C 语言,当然最好假期能把基本功能实现或部分功能实现,开学后对其进行完善和修改。

最后再次祝同学们新年快乐!

赵占芳

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值