湖南大学实验报告材料.docx
- 文档编号:16438516
- 上传时间:2023-07-13
- 格式:DOCX
- 页数:14
- 大小:668.33KB
湖南大学实验报告材料.docx
《湖南大学实验报告材料.docx》由会员分享,可在线阅读,更多相关《湖南大学实验报告材料.docx(14页珍藏版)》请在冰点文库上搜索。
湖南大学实验报告材料
HUNANUNIVERSITY
C++
学生姓名
李国龙
学生学号
201408010211
专业班级
计算机科学与技术
指导老师
杨圣洪
2015年12月7日
一、实验原理:
运用文件的知识编写一个校园卡消费系统,实现文件的创建,查询,追加,插入,修改,删除,排序,快速查找等功能。
二、实验目标:
掌握文件操作的知识,学会编写系统。
三、实验设计:
1.文件的创建:
(1)创建文本文件指针
#include
ofstreamoutFile("文件名",ios:
:
out);//输出方式建文件
ofstreamoutFile;//先声明变量,后面才打开该文件
outFile.open("文件名",ios:
:
out);
(2)往文件中写入内容ctrl+z结束输入
while(cin>>name>>no>>score){
f(i>0){outFile< outFile< cout<<"? "; }//写入数据间空格分隔 (3)关闭文件 outFile.close(); 2.文本文件的查询 (1)ofstreamoF("文件名",ios: : out);//接受它人输出 ifstreamoF("lt1.txt",ios: : app);//追加到文件尾部 ofstreamoF("lt1.txt",ios: : ate);//尾追或中间插入 ifstreamoF("lt1.txt",ios: : in);//将内容输入变量中 ofstreamoF("lt1.txt",ios: : trunc);//丢弃现在内容=out fstreamoF("lt1.txt",ios: : binary);//二进制即非文本 将文件数据读入到变量中,与指定学号相等的记录,全部返回来 (2)while(fin>>studno…) {if(studno==findVal){...}} 3.文本文件的追加 ofstreamoF("文件名",ios: : out);//接受它人输出 ifstreamoF("lt1.txt",ios: : app);//追加到文件尾部 ofstreamoF("lt1.txt",ios: : ate);//尾追或中间插入 ifstreamoF("lt1.txt",ios: : in);//输入给它人方式 ofstreamoF("lt1.txt",ios: : trunc);//丢弃现在内容=out fstreamoF("lt1.txt",ios: : binary);//二进制即非文本 从键盘读入数据并写入到文件中 (2)while(cin>>studno…) {fout< 4.文本文件的插入 ofstreamoF("文件名",ios: : out);//接受它人输出 ifstreamoF("lt1.txt",ios: : app);//追加到文件尾部 ofstreamoF("lt1.txt",ios: : ate);//尾追或中间插入 ifstreamoF("lt1.txt",ios: : in);//将内容输入变量中 ofstreamoF("lt1.txt",ios: : trunc);//丢弃现在内容=out fstreamoF("lt1.txt",ios: : binary);//二进制即非文本 将文件数据读入到变量中, 与指定学号不相等的记录,直接写入到新文件中, 与指定学号相等则先写入待插入的记录到新文件中, 再写入读出的记录到新文件中。 全部返回来 原文件-->输入到变量--->输出到新文件Lt10M 5.文本文件的修改 ofstreamoF("文件名",ios: : out);//接受它人输出 ifstreamoF("lt1.txt",ios: : app);//追加到文件尾部 ofstreamoF("lt1.txt",ios: : ate);//尾追或中间插入 ifstreamoF("lt1.txt",ios: : in);//将内容输入变量中 ofstreamoF("lt1.txt",ios: : trunc);//丢弃现在内容=out fstreamoF("lt1.txt",ios: : binary);//二进制即非文本 将文件数据读入到变量中, 与指定学号相等的记录,修改以后写入到新文件中, 与指定学号不相等的记录,直接写入到新文件中 原文件-->输入到变量--->输出到新文件Lt10N 6.文本文件的删除 ofstreamoF("文件名",ios: : out);//接受它人输出 ifstreamoF("lt1.txt",ios: : app);//追加到文件尾部 ofstreamoF("lt1.txt",ios: : ate);//尾追或中间插入 ifstreamoF("lt1.txt",ios: : in);//将内容输入变量中 ofstreamoF("lt1.txt",ios: : trunc);//丢弃现在内容=out fstreamoF("lt1.txt",ios: : binary);//二进制即非文本 将文件数据读入到变量中, 与指定学号不相等的记录,直接写入到新文件中, 原文件-->输入到变量--->输出到新文件Lt10N 7.文本文件的排序 ofstreamoF("文件名",ios: : out);//接受它人输出 ifstreamoF("lt1.txt",ios: : in);//将内容输入变量中 将文件数据读入到变量中,将排序字段studno的值读入到数组studNo中。 为此先遍历数据表一次,获取其记录数,再创建其数组,再从头读到尾建立相关数组。 根据关键字段排序,同时调用记录数组 最后将排序结果写入到结果文件中 原文件-->输入到数组--->输出到新文件Lt10N 8.文本文件的快速查找 ofstreamoF("文件名",ios: : out);//接受它人输出 ifstreamoF("lt1.txt",ios: : in);//将内容输入变量中 将文件数据读入到变量中,将排序字段studno的值读入到数组studNo,。 为此先遍历数据表一次,获取其记录数,再创建其数组,再从头读到尾建立相关数组。 根据关键字段排序,同时调用记录数组 最后将排序结果写入到结果文件中 索引文件-->输入到索引数组---> 数据文件---显示出来,二分法查询学号 四、运行结果: 1.文件的创建: 2.文本文件的查询 3.文本文件的追加 4.文本文件的插入 5.文本文件的修改 6.文本文件的删除 7.文本文件的排序 8.文本文件的快速查找 9.结束 五、总结 在追加和创建文件的操作中会出现程序出错的提示,但是文件确实创建了,追加也成功了,结果是正确的,也许是编译器的问题吧。 感觉快速查找相比较其他操作较难,每编写一个函数在main()中增加一段代码调用该函数是极限开发,因为查询功能的代码大同小异,所以要学会仿写。 这次的校园卡消费系统与上次编写的系统存在框架上的一致性,所以很容易仿写。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 湖南大学 实验 报告 材料