操作系统课程设计.docx

上传人:b****5 文档编号:28524258 上传时间:2023-07-18 格式:DOCX 页数:18 大小:320.26KB
下载 相关 举报
操作系统课程设计.docx_第1页
第1页 / 共18页
操作系统课程设计.docx_第2页
第2页 / 共18页
操作系统课程设计.docx_第3页
第3页 / 共18页
操作系统课程设计.docx_第4页
第4页 / 共18页
操作系统课程设计.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

操作系统课程设计.docx

《操作系统课程设计.docx》由会员分享,可在线阅读,更多相关《操作系统课程设计.docx(18页珍藏版)》请在冰豆网上搜索。

操作系统课程设计.docx

操作系统课程设计

操作系统课程设计

11、写随机文件

12、文本文件操作验证程序

上述功能由两部分程序验证,中断驻留程序和验证程序。

首先运行中断驻留程序,然后运行验证程序得到预期结果。

一、进度安排

1-2天:

资料查找、系统分析,数据流程分析,概要设计

1-2天:

系统详细设计、功能设计

5-6天:

模块设计、编程调试

1天:

资料整理、课程设计说明书编写。

二、完成后应上交的材料

1、课程设计说明书(程序流程图、功能模块图、相关数据结构、核心算法等)

2、相关源程序文件

三、总评成绩

指导教师签名日期年月日

系主任审核日期年月日

 

二、函数功能模块…………………………………………………………………………………………………..6

 

一、程序流程图

 

二、函数功能模块

函数1:

基于文件内容的输入

函数:

intoutput_file();

函数2:

基于文件内容的输出

函数:

intinput_file();

函数3:

创建文件

函数:

boolcreate_file(char*name);

函数4:

打开文件

函数:

intopen_file(charname[]);

函数5:

顺序读写文件

函数:

intorder_file(charname[]);

函数6:

随机读写文件

函数:

intrandom_file(charname[]);

 

三、源代码

#include

#include

#include

chard[]="f:

\\VC++\\TITLE4.txt";

classTinterface{

public:

intoutput_file();

voidinput_file();

boolcreate_file(charname[]);

intopen_file(charname[]);

intorder_file(charname[]);

intrandom_file(charname[]);

};

//基于文件内容的输入,以f:

\\VC++\\TITLE4.txt为例

intTinterface:

:

output_file(){

ofstreamout;

out.open(d,ios:

:

app);

if(!

out){

cout<<"Cannotopen";

return1;

}

cout<<"请输入要输入的文字:

";

chara[99];

cin>>a;

out<

out.close();

}

//基于文件内容的输出,以f:

\\VC++\\TITLE4.txt为例

voidTinterface:

:

input_file(){

ifstreaminput;

charch;

input.open(d,ios:

:

app);

while(input.get(ch)){

cout<

}

cout<

}

//创建文件

boolTinterface:

:

create_file(charname[]){

ifstreamfs;

if(!

name)

returnfalse;

fs.open(name,ios:

:

nocreate);

if(!

fs){

fs.clear();

fs.close();

fs.open(name,ios:

:

out);

if(!

fs.is_open()){

cout<<"创建失败!

"<

fs.clear();

fs.close();

return0;

}

cout<<"\""<

"<

fs.close();

return1;

}

cout<<"文件已存在!

"<

return0;

}

//打开文件

intTinterface:

:

open_file(charname[]){

ifstreamfs;

fs.open(name,ios:

:

nocreate);

if(!

fs){

cout<<"文件不存在!

"<

}else{

cout<<"文件已打开!

"<

}

return0;

}

//顺序读写文件

intTinterface:

:

order_file(charname[]){

intchoice;

cout<<"请选择读或写操作(1.顺序读2.顺序写)"<

cin>>choice;

if(choice==1){

ifstreamin;

in.open(name,ios:

:

nocreate||ios:

:

out);

if(!

in){

cout<<"文件不存在!

"<

}else{

charch;

while(in.get(ch)){

cout<

}

}

in.close();

}

else{

if(choice==2){

ofstreamfs;

fs.open(name,ios:

:

nocreate||ios:

:

in);

if(!

fs){

cout<<"文件不存在!

"<

}else{

cout<<"请输入要输入的文字:

";

chara[99];

cin>>a;

fs<

}

fs.close();

}

else

{

cout<<"输入错误!

"<

}

}

return0;

}

//随机读写文件

intTinterface:

:

random_file(charname[]){

intchoice;

cout<<"请选择读或写操作(1.随机读2.随机写)"<

cin>>choice;

if(choice==1){

ifstreamin;

in.open(name,ios:

:

nocreate||ios:

:

out);

if(!

in){

cout<<"文件不存在!

"<

}else{

inti;

cout<<"请输入文件开始读的位置"<

cin>>i;

in.seekg(i,ios:

:

beg);

charch;

while(in.get(ch)){

cout<

}

in.close();

}

}

if(choice==2){

ofstreamout;

out.open(name,ios:

:

nocreate||ios:

:

in);

if(!

out){

cout<<"文件不存在!

"<

}else{

inti;

cout<<"请输入要输入的文字:

"<

chara[99];

cin>>a;

cout<<"请输入文字插入的位置:

"<

cin>>i;

out.seekp(i,ios:

:

beg);

out<

}

out.close();

}

return0;

}

intmain(){

Tinterfacefile;

intchoice;

cout<<"*************菜单******************\n\n"

<<"1、基于文件内容的输入\n"

<<"2、基于文件内容的输出\n"

<<"3、创建文件\n"

<<"4、打开文件\n"

<<"5、顺序读写文件\n"

<<"6、随机读写文件\n"

<<"99、退出\n\n";

while(true){

cout<<"请选择功能"<

cin>>choice;

switch(choice){

case1:

file.output_file();

break;

case2:

file.input_file();

break;

case3:

charname[256];

cout<<"请输入要创建的文件名\n";

cin>>name;

file.create_file(name);

cout<

break;

case4:

charfname[256];

cout<<"请输入你要打开的文件名:

\n";

cin>>fname;

file.open_file(fname);

cout<

break;

case5:

charfsname[256];

cout<<"请输入文件名:

"<

cin>>fsname;

file.order_file(fsname);

cout<

break;

case6:

charfiname[256];

cout<<"请输入文件名:

"<

cin>>finame;

file.random_file(finame);

cout<

break;

case99:

return0;

}

}

}

四、程序运行结果

1、主界面

 

2、基于文件的输入

输入前的TITLE4.txt执行后的TITLE4.txt

 

3、基于文件内容的输出

 

4、创建文件

执行前F:

\VC++目录执行后F:

\VC++目录

 

5、打开文件

 

6、顺序读写文件

 

执行前FILE.txt的内容为空

执行后FILE.txt的内容

7、随机读写文件

 

执行前FILE.txt的内容执行后FILE.txt的内容

8、退出

 

五、心得体会

在这个课程设计中,我被分配到的任务是建立文件访问接口,刚好本学期我们学习了C++这门课程,里面就讲了关于文件操作的文件流,所谓学以致用,所以这次的课程设计我是用C++的文件流来实现设计要求的。

运用了文件流的基本知识实现了文件的创建,输入,输出等等功能。

从看到课程设计任务书之后,我就开始查找资料,从课本上还有网上,首先是将文件的打开方式掌握了,明白了如何对文件进行操作以及进行怎样的操作,准备了两三天之后才开始编写程序,编写程序中主要遇到的困难的在进行文件随机读写的时候seekp()与seekg()使用过程中遇到许多的问题,刚开始对使用函数之后,文件当前指针位置的理解不透彻,所以在随机输出与输入的时候无法精确的按照想的位置开始进行读写,运行结果与自己想象中的不一样,最后通过咨询老师,了解其本质后才解决了这个问题。

总体来说,因为我做的这个程序实现的功能很简单,程序相对来说也不是很难,所以我很快就完成了,只是这个程序还是存在着一定的缺陷,比如说,在进行顺序写的时候,如果文件本身存在内容的话,所写的内容会覆盖文件本身存在的内容,随机写的时候也会出现这个问题,可能会造成文件内容的缺失。

针对这个问题,我自己也在努力探索,相信自己很快就可以解决掉这个问题。

通过这次课程设计,我基本掌握C++文件流的操作,在自己的手下敲出一行行的代码直到完成整个课程设计,整个过程给了我很大的鼓舞,看着写完的代码,虽然简陋,但内心还是充满了成就感,体会到了当你努力去完成一件事情,成功的时候那种愉悦感。

因此,在以后的学习中,我都会靠自己努力地去完成学习任务所要达到的要求

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 教学研究 > 教学计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1