实验十综合设计型实验.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验十综合设计型实验.doc

综合性实验 一、实验目的: 本实验为学生提供了一个既动手又动脑,上机实践的机会。学生通过分析和解决该实验,将课本上的理论知识和实际有机地结合起来,锻炼学生分析、解决较复杂问题的能力,提高学生编写较大程序的能力。建立基本的软件工程思想。 二、实验内容 编写一个学生信息管理系统,主要用来管理学生基本信息及成绩信息。系统功能模块如下图: 具体要求: 1、建立学生信息,每个学生的信息应包括:学号、姓名、性别、班级、3门课程(计算机、高等数学、英语)的成绩。 2、数据输入:输入学生的各项信息(至少10名同学信息),并保存到文件中。 3、数据修改:输入学生的学号可以修改该学生的信息;简单的功能:直接输入该学生的所有信息。高级功能:修改的时候,提示原来输入的数据,然后让用户输入新的数据。直接按回车表示不需要修改。只要实现简单功能,就??为是符合要求(下同)。学有余力的同学可以实现高级功能。修改后的数据(包括原来的数据)保存到一个新的文件中。 4、数据处理:可以选择处理方式为:排序、查询、统计。其中: a)排序:按学号排序。学有余力的同学可以实现按照姓名来排序。 b)查询:根据学号查询该学生的3门功课成绩(不要输出其他信息)。学有余力的同学可以另外实现这个查询要求:将所有有不及格科目(成绩小于60分)的学生查询出来。 c)统计:统计各学生的3门功课的平均成绩。 5、数据输出:相应输出上面数据处理后的学生的相应结果信息; 6、退出:退出整个学生信息管理系统。 三、上传实验报告要求: 将编写的源程序以“学号+ zhsy.c”为文件取名并且放入“平时作业”文件夹中,同时也存入sybg文件夹;并将实验报告以文件名“学号+ zhsy. doc”放到sybg的文件夹中。同时,输入的数据所生成的文件(你的学号.txt)也要一起上传至sybg文件夹。 即:sybg文件夹中除了原来的5个实验报告外,增加以下3个文件(请注意文件名一定要写对,其中2008100101是某学生的学号): 2008100101zhsy.doc 2008100101zhsy.c 2008100101.txt 参考内容: 1.构体类型的定义,建议使用如下结构: struct student { int num; char name[30]; char sex[8]; char classname[20]; int computer; int math; int english; }; 并定义结构体变量数组: struct student stu[10]; 将这些定义放在程序文件的首部,作为全局变量。 文件指针fp,也把它定义成全局的。 FILE *fp; 注意,为了简化程序,下面的函数中的参数n,大家可以省略,直接用10即可。 2.编写一个函数input,一次性输入10个学生的数据,并保存在一个文件中,要求保存的输入数据文件使用你的学号.txt,如:2006714101.txt。注意输入数据时,学号不要按顺序输入,以利于下面的排序操作。 void input(struct student s[],int n) 3.编写一个函数read,专门用于打开数据文件,读出其中的数据,保存到结构体变量数组中,用于后续的操作 void read(struct student s[],int n) 4.编写一个函数sort,实现对10个学生数据根据学号进行排序。 void sort(struct student s[],int n) 5.编写一个函数inquiry,实现根据学号进行查询. void inquiry(struct student s[],int n,int stunumber) 6.编写一个函数modify,实现更根据学号进行修改. 修改后的可以数据保存到一个新文件中。也可以用“w” 方式打开原来的数据文档,把原来的整体覆盖掉,重新写入。 void modify(struct student s[],int n,int stunumber) 7.编写一个函数get_average_score,统计并打印各学生的3门功课的平均成绩。 void get_average_score(struct student s[],int n) 8.在main函数中,使用switch...case 结构,再加上goto 语句,实现循环,等待输入,并根据不同的输入执行相应的模块。 另外,还可以编写一个函数output,用于将结构体变量数组的全部内容打印输出。这样调用该函数可以方便地查看操作结果。 void output(struc

文档评论(0)

youbika + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档