




已阅读5页,还剩31页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
机电工程学院 中 南 大 学C+程序设计基础 课 程 设 计题 目 大学生社会实践管理系统成员姓名 李建华学 号 0806121625班 级 机械1216班指导教师 樊广军学 院 机电工程学院日 期 2013年7月1日大学生社会实践管理系统一、系统设计目标及意义本系统是一个大学生社会实践管理系统,实现任意添加、删除、编辑、找与显示实践人信息及实践活动信息等功能,为学校的学生工作提供参考。二、功能介绍1、重建或建立大学生社会实践管理系统库的操作通过函数的识别,自动判断是否已经建立大学生社会实践管理系统库。若未建立,则新建一个大学生社会实践管理系统库;若已建立,则可直接使用其他功能。同时,还可以重新建立一个大学生社会实践管理系统库覆盖之前的系统库。2、添加实践信息的操作:需要输入实践人的编号、姓名、性别、学校、院系、专业、年级、班级、电话、地址等完成实践人信息的添加;输入实践的实践地点、时间、事件类型及等级评价完成实践活动信息的添加;完成输入后,按任意键返回主菜单。3、显示所有实践信息的操作:会显示出所有现有的大学生社会实践管理系统库中的所有实践信息。4、 查找实践人信息的操作:通过对第几位实践人的输入,实现查看某一位实践人的所有实践信息。5、替换实践人信息的操作:通过对第几位实践人的输入,并输入新的实践信息实现替换某一位实践人的所有实践信息。6、退出系统:退出大学生社会实践管理系统界面。三、系统流程图新建大学生社会实践管理系统库重建大学生社会实践管理系统库显示所有实践信息查找实践人信息替换实践人信息退出系统添加实践人信息开始判断是否已经建立系统库显示系统主界面根据输入的字母执行不同的操作NY四、类图NOTEBOOK filename20:char f:fstream p:PRACTICE+ NOTEBOOK(char *fs)+ creat():void+ append():bool+ display():void+ inS():void+ seek(int x):bool+ repl(int x):voidPRACTICE ID20:char name20:char sex20:char major20:char university20:char college20:char cls20:char grade20:char address20:char phone20:char place20:char time20:char type20:char pingjia20:char+ srBh():void+ srXm():void+ srXb():void+ srXx():void+ srYx():void+ srZy():void+ srNj():void+ srBj():void+ srDz():void+ srDh():void+ srDjd():void+ srSj():void+ srPj():void+ srXX():void五、主要运行界面图及运行结果图(1)未检测到大学生社会实践管理系统库,提示创建。(2) 输入Y,创建成功,进入系统主界面。(3)输入b,添加实践人个人信息及实践信息,输入完毕后,整体输出。(4)按任意键返回主界面,输入c,显示所有现有的大学生社会实践管理系统库中的所有实践信息。(5)按任意键返回主界面,输入d,进入“查找实践人信息”界面,根据输入第几位实践人的序号,查看其全部信息。(6)输入1,显示第1位实践人的信息如下:(7)按任意键返回主界面,输入e,进入“替换实践人信息”界面,根据输入第几位实践人的序号,替换其全部信息。(7)按任意键返回主界面,输入c,就可以查看更改(替换)后的全部信息。(8)按任意键返回主界面,当需要重新建立一个大学生社会实践管理系统库时,输入a,进入“重建页面”,根据提示重建一个大学生社会实践管理系统。(9)按任意键返回主界面,输入t,退出大学生社会实践管理系统。六、系统设计过程中遇到的问题1、之前从未编过如此大的程序,刚开始的时候无从下手。2、功能还不够全面,还不能够解决更多的问题,例如:只能通过输入第几位实践人进行查找与替换。(造成了一些麻烦与不便)3、替换的之后会出错,统计记录数出错。(记录数会自动加一)七、创新点1、能够先检测是否已经建立大学生社会实践管理系统库。2、提示用户“目前系统库当中已存有多少条记录”。3、能够随时的很方便的更新系统库信息,重建或更替实践信息。八、课程设计心得体会第一次很自主的对一个较大的问题用C+的思维进行分析,刚开始的时候有无从下手的感觉,通过去图书馆查阅相关书籍,上网查找相关资料,渐渐的自己也开始明白如何去解决这个问题。通过这次自己动手编这个比较大型的程序,自己也对C+的知识有了更深的了解,之前在课堂上,知识学习一些理论上的知识,而这次真正联系全部的知识,将所有知识融会贯通的运用于一个系统的编程,确实让自己提高了在书本以外的实践动手的能力,相信也会对以后的学习提供很大的帮助。这次课程设计的时间有点紧张,从书本到实践的过程花了比较长的时间,以至于无法呈现一个更完美的大学生社会实践管理系统。不过,对C+认识的加深和动手能力的提高是自己最大的收获。九、附录源文件代码:#include #include #include #include #include #include using namespace std;class PRACTICEprivate:char ID20;char name20;char sex20;char major20;char university20;char college20;char cls20;char grade20; char address20; char phone20; char place20;char time20;char type20;char pingjia20;friend class NOTEBOOK;public:void srBh()coutID;coutendl;void srXm()coutname;coutendl;void srXb()coutsex;coutendl;void srXx()coutuniversity;coutendl;void srYx()coutcollege;coutendl;void srZy()coutmajor;coutendl;void srBj()coutcls;coutendl;void srNj()coutgrade;coutendl;void srDz()coutaddress;coutendl;void srDh()coutphone;coutendl;void srSjd()coutplace;coutendl;void srSj()couttime;coutendl;void srLx()couttype;coutendl;void srPj()coutpingjia;coutendl;void scXX()cout您输入的实践人 name 的信息如下:endl;coutsetiosflags(ios:left)编号:setw(20)IDendl姓名:setw(20)nameendl性别:setw(20)sexendl学校:setw(20)universityendl院系:setw(20)collegeendl专业:setw(20)majorendl年级:setw(20)gradeendl班级:setw(20)clsendl电话:setw(20)phoneendl地址:addressendl实践地点:placeendl实践时间:time小时endl实践类型:typeendl实践评价等级:pingjiaendl;class NOTEBOOKprivate:char filename20;fstream f;PRACTICE p;public:NOTEBOOK(char *fs)strcpy(filename,fs);void creat()f.open(filename,ios:out|ios:trunc);f.close();bool append()f.open(filename,ios:out|ios:app);if(!f)cerr无法打开文件!endl;return false;elsefsetiosflags(ios:left)编号:setw(20)p.ID姓名:setw(20)性别:setw(20)p.sex学校:setw(20)p.university院系:setw(20)p.college专业:setw(20)p.major年级:setw(20)p.grade班级:setw(20)p.cls电话:setw(20)p.phone地址:setw(20)p.address实践地点:setw(20)p.place实践时间:setw(20)小时p.time实践类型:setw(20)p.type实践评价等级:setw(20)p.pingjiaendl;p.scXX();f.close();return true;void display()char ch;fstream f1;f1.open(filename, ios:in);if(!f1)cerr文件不能打开!endl;elsef1.seekg(0);cout*endl;while(!f1.eof()f1.get(ch);coutch;if(ch=n) cout*endl;f1.close();void inS()p.srBh();p.srXm();p.srXb();p.srXx();p.srYx();p.srZy();p.srNj();p.srBj();p.srDz();p.srDh();p.srSjd();p.srSj();p.srLx();p.srPj();bool seek(int x)fstream f;char ch;f.open(filename, ios:in);if(!f)cerr文件不能打开!endl;return false;elsef.seekg(0);int i=1;while(!f.eof() & i=x)f.get(ch);if(ch=n)i+;if(i=x)coutch;coutendl;if(f.eof()cout没有这条记录!endl;return false;f.close();void repl(int x)fstream f1,f2;int i=1;char ch;char cmd256;bool inputed=false;f1.open(filename,ios:in);f2.open(tmp.txt,ios:out|ios:trunc);p.srBh(); p.srXm(); p.srXb(); p.srXx(); p.srYx();p.srZy(); p.srNj(); p.srBj();p.srDz(); p.srDh(); p.srSjd();p.srSj(); p.srLx(); p.srPj();while(!f1.eof()f1.get(ch);if(i!=x) f2.put(ch);if(ch=n) i+;if(f1.eof()break;if(i!=x & inputed)inputed=false;f2.put(ch);if(i=x & !inputed)f2setiosflags(ios:left)编号:setw(20)p.ID姓名:setw(20)性别:setw(20)p.sex学校:setw(20)p.university院系:setw(20)p.college专业:setw(20)p.major年级:setw(20)p.grade班级:setw(20)p.cls电话:setw(20)p.phone地址:setw(20)p.address实践地点:setw(20)p.place实践时间:setw(20)小时p.time实践类型setw(20)p.type实践评价等级setw(20)p.pingjia;inputed=true;f1.close();f2.close();strcpy(cmd,);strcat(cmd,del );strcat(cmd,filename);system(cmd);strcpy(cmd,);strcat(cmd ,ren tmp.txt );strcat(cmd,filename);system(cmd);bool fileExist(char *fn)/检测文件是否存在fstream f;f.open(fn,ios:in);if(!f)f.close();return false;elsef.close();return true;int recCount(char *fn)/检测文件中存了多少条记录int cnt=0;char ch;fstream f;f.open(fn,ios:in);if(!f)return 0;elsewhile(!f.eof()f.get(ch);if(ch=n) cnt+;f.close();return cnt=0?0:-cnt;void main()HANDLE hd = GetStdHandle(STD_OUTPUT_HANDLE); CONSOLE_SCREEN_BUFFER_INFO csbInfo; GetConsoleScreenBufferInfo(hd, &csbInfo); SetConsoleTextAttribute(hd, 10 |(csbInfo.wAttributes&0x0F); NOTEBOOK b(practice.txt);char w;int x;if(!fileExist(practice.txt) cout目前您还未建立大学生社会实践管理系统库,是否创建?endl;cout创建,输入其它 - 不创建w;if(w=Y)b.creat();while(1)cout *endl;cout 大学生社会实践管理系统 endlendl;cout 操作选择 endlendl;cout a.(fileExist(practice.txt)?重建:建立)大学生社会实践管理系统库 endl;cout b.添加实践人信息 endl;cout c.显示实践人信息 endl;cout d.查找实践人信息 endl;cout e.替换实践人信息 endlendl;cout t.退出程序 endl;cout *endl;cout 提示:现在大学生社会实践管理系统库(fileExist(practice.txt)?已经:还未)创建! endl;cout 目前大学生社会实践管理系统库内已有setw(3)recCount(practice.txt)条记录。 endl;coutw;switch(w)case a:system(cls);cout提示
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 乡村生态环境保护实施方案手册
- 重难点解析人教版8年级数学上册《全等三角形》综合练习练习题(详解)
- 数据分析在社交媒体营销中的应用实战指南
- 外贸代理服务合作协议规范指南
- 构建高温期间公共交通运营调整
- (2025年标准)国际班协议书
- 贵州省习水县一中2026届化学高一第一学期期末调研试题含解析
- 工业智能制造质量控制手册
- 新零售行业智慧零售技术应用方案
- (2025年标准)刮大白安全协议书
- 小学生防欺凌课件
- 2025-2030年中国生物质能发电行业市场深度调研及投资策略与投资前景预测研究报告
- 2025新高考英语Ⅱ卷真题听力原文
- 2025年中国数位式照度计市场调查研究报告
- 江苏省扬州市2023-2024学年高一下学期6月期末考试英语试题(含答案)
- T/CIE 167-2023企业级固态硬盘测试规范第3部分:可靠性测试
- 遗址公园建设项目可行性研究报告
- 2025如何审查合同文件中的要约与要约邀请的区别
- 项目走账协议书
- 2025-2030酒吧行业市场发展分析及投资前景研究报告
- 《智能变电站工程应用技术》全套教学课件
评论
0/150
提交评论