计算机能力综合实验实验报告1.docVIP

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《计算机能力训练》 课程设计管理系统 利用TURBOC2.0实现学生成绩管理系统 二、需要处理的基础数据 学生基本信息:学号(例如2003级12班6号写、姓名、性别、年龄、课程名称(外语SCORE[0]、高数SCORE[1]、C语言SCORE[2]、马哲SCORE[3])、考试成绩等。 三、系统功能 1.学生基本情况录入。 2.允许对已经录入的数据进行显示。 3.允许进行数据的插入。 4.删除基本数据的相关信息。 5.基于姓名的查询。如:姓张的所有同学。 6.基于各种基本数据的统计计算。如: ①统计每个学生各门功课的平均成绩,并按平均成绩从高到低的次序排名输出每个学生各门功课的综合成绩和平均成绩(名次、学号、姓名、平均成绩、各门功课的考试成绩)。 ②列出90分以上(包括90)、80分以上(包括80)、70分以上(包括70)、60分以上(包括60)、不及格学生清单(学号、姓名、不及格的课程和成绩)。 ③统计并输出各门功课的平均成绩和总平均成绩。 四、实验模块功能 Main()主函数 主函数是程序的入口,采用模块化设计。首先声明必要的变量,然后进行链表的初始化,完成程序入口。 init()初始化 单链表需要一个头指针指向表的第一个结点,对单链表的访问使从头指针开始的,初始化单链表为空。空用NULL表示,该值在头文件stdio.h中定义为常数0. _menu主菜单 程序引用putch()输出图形符号的ASCII 码值来实现边框。 利用window函数制作显示窗口,该窗口比边框略小一些,正好包含于边框之中。通过key()实现对光标键的捕捉,光条的移动通过ups()和dns()实现。同时检测ENTER键,若捕捉到此键,则执行相应的函数模块。 create()创建单链表 进入主菜单中的“Enter list”选项,进入创建链表函数,即输入学生信息,按照提示信息输入学号,姓名,性别,课程成绩,每输入一个数按一下回车,当输入学号字符为@时结束输入,返回主函数,单链表创建完毕,输入界面如图: 数据完整性的验证由两个函数create()和inputs()完成。设置头指针为空,申请内存空间,如果申请不到,则内存空间满,无法保存数据,则返回主函数,否则输入数据,并进行相应的校监,成绩就在create()中边输入边验证,以保证输入和法数据。当成绩输入后,系统自动计算生成总分和平均分,并将名次数据先置1,待排序后再赋予新值。数据输入后,将其后继结点指针指向前头的结点,新头指针指向新插入的结点,这样新插入的结点总在前头。数据输入结束后返回链表的头指针,返回_menu()函数,进行其他操作。 delete()删除结点 删除指定学号的学生记录。首先输入要删除结点的学号,输入后根据学号顺序查找结点,如果没找到,则输出没找到信息;否则,显示找到的结点信息,按任意键后显示已删除信息。注意删除结点时的操作,如果该结点是首结点,则要修改头指针,否则,将该结点的前趋指针的后继指向其后继结点,然后释放该结点。 print()显示单链表 本函数实现显示链表数据功能。由于链表只能采取顺序访问的方法,所以定义一个指向结点的临时变量p,初值为单链表的头指针,输出指针所指的记录的数据后,将指针后移一个记录,直到p指针值为空值,则所有记录输出完毕。 search()查找结点 按照姓名查找结点,从头结点开始顺序查找,成功显示记录信息,失败,显示没找到。姓名是字符串,比较功能利用字符串比较函数strcmp()实现。 save()保存记录到文件 将学生信息保存到指定文件中。按照文件读写要求,先定义一个指向文件的指针,输入要保存的磁盘文件名,如果输入的是绝对路径,则文件保存到指定位置;如果只给文件名,则文件保存在Turbo C默认的路径下, load()从文件中读取记录 按照文件读写要求,先定义一个指向文件的指针,输入要读入数据的磁盘文件名,然后确定文件的大开放式。如果文件打不开,则退出函数,否则选择一种度文件方式,从文件头开始,将记录读入内存,直到文件尾。 computer()计算各门课程的总分和课程平均分 头指针开始,每读一条记录,分别累加各科成绩,并统计记录条数,当所有数据处理完毕,求出平均分,最后输出结果为所有学生各门课程的总分和平均分。 insert()插入结点 插入结点需要输入插入位置和新结点信息。输入某个结点的学号,新结点将插入在这个指定结点之前。申请空间得到指针info,输入新结点信息,存放到新申请的空间info中。设链表的头指针为h,p为指定结点的指针,q为p的前驱指针,从头结点开始循环移动指针p查找指定的结点,查找和插入时分一下几种情况处理: 指针为空,如果p等于头h,说明

文档评论(0)

yan666888 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档