- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《数据结构》课程设计报告
课题名称: 学生成绩管理系统
专业班级: 2015221
学 号: 201522122
姓 名: 赵敏
指导老师: 杨彬
一、课题名称
学生成绩管理系统
二、课题设计的基本思想,原理和算法描述
1,、基本思想:
建立一个学生成绩管理系统,能够实现每位学生的成绩的录入、删除、修改、查找、排序(按成绩降序排序)等功能。
2、原理:
首先定义项目的数据结构,然后将每个功能写成一个函数来完成对数据的操作,然后完成主函数以验证各个函数功能并得出运行结果,最后调试改进。
/3、算法描述
定义项目的数据结构
void display()
{
coutsetw(6)name setw(3)num setw(3)scoreendl; //setw()设置输出宽度 输出项目占6个字符的位置,它由头文件iomanip定义
}
friend void insert();// 定义插入(用友元函数方便调用类中成员)
friend void del();// 定义删除
friend void search();// 定义查找
friend void change();// 定义修改
friend void sort();//
//定义每个学生数据
private:
char name[15]; //姓名
int num; //学号
int score; //成绩
};
#includeiostream //使用标注命名空间 调用函数,需要名空间的支持
#includeiomanip //I/O流控制头文件
#includefstream //文件操作的类和方法头文件
using namespace std; //申请内存空间
class student
{
public: //定义为公共成员函数
void setdata()
{
cinnamenumscore;
}
三、源程序及注释
#include iostream
#include fstream
#include string
#include iomanip
using namespace std;
string str[5] ; //定义一个str字符串来吸收文件2.txt中重复的标题
int aNum=0; //使用全局变量定义学生的人数
struct adent //构建结构体
{
char name[10]; //姓名
int id;
int chinese;
int math;
int english;
int sum;
}a[50],temp;
//实现对文件1.txt和文件2.txt数据的合并,生成文件3.txt
void Merge()
{
char* f1 = d:\\1.txt;
char* f2 = d:\\2.txt;
char* f3 = d:\\3.txt;
ifstream inFile1( f1 ); //从磁盘读取文件1.txt
ifstream inFile2( f2 ); //从磁盘读取文件2.txt
ofstream outFile( f3 ); //写入信息到文件3.xtx
outFile inFile1.rdbuf(); //把文件1.txt中的数据写入到outfile
for(int i=0;!inFile2.eof()==true;i++) //遍历文件2.txt的所有数据
{
string str;
getline(inFile2,str); //读取第一行信息放到str中
if(i==0)continue; //跳过第一行
outFilestrendl; //把后面的信息放入到文件3.txt
}
inFile1.close(); //关闭文件f1
inFile2.close();
outFile.close();
ifstream f ( f3 );
cout **文件已生成,合并后数据如下**endl;
cout f.rdbuf(); //输出文件3.txt
};
//把文件3.txt中的数据读出到结构体中,便于对数据的操作
void FillStruct(adent *p)
{
int i=aNum, j=0; //这里让i = aNu
您可能关注的文档
最近下载
- 人教PEP版六年级上册Unit 5 What does he do 单元整体教学设计.pdf
- 2021年新生儿感染:抗菌药物预防性与治疗性使用指南解读(全文).pdf
- 《数字图像处理教程》试题库.pdf VIP
- 学校意识形态工作计划.pdf
- 战略模拟软件CESIM全攻略(课堂PPT).ppt
- 中国碳交易政策对可持续经济福利的影响.pptx VIP
- 反三违(典型“三违”)行为清单.docx
- (高清版)B-T 3836.1-2021 爆炸性环境 第1部分:设备 通用要求.pdf VIP
- 人教版高一化学必修一知识点梳理.docx
- 人教pep版英语三年级上册阅读理解专项复习试卷测试题(含答案).doc
文档评论(0)