2022年2022年课程设计文件管理系统设计 .pdf
《2022年2022年课程设计文件管理系统设计 .pdf》由会员分享,可在线阅读,更多相关《2022年2022年课程设计文件管理系统设计 .pdf(19页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、*大学计 算 机 科 学 与 技 术 学 院课程设计报告( 2006 2007 学年度第 2 学期 )课程名称操作系统课程设计项目名称文件管理系统设计姓名学号专业班级地点教师名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 19 页 - - - - - - - - - xx 计算机科学与技术学院课程设计报告1.题目内容:文件管理系统设计: 设计和调试一个简单的文件系统,通过模拟文件操作命令的执行,来模拟文件管理,对主要文件操作命令的实质和执行过程有比较深入的了解,掌握它们的
2、基本实施方法.2.设计任务及主要技术: 设计任务:1. 设计一个支持n 个用户的文件系统,每个用户可拥有多个文件. 2. 采用二级或二级以上的多级文件目录管理.主要技术:1. 对文件应设置存取控制保护方式,如“允许读”、“允许写”等. 2. 系统的外部特征应接近于真实系统,可设置下述文件操作命令:建立文件、修改属性、删除文件、读文件、写文件、复制文件、查询目录. 3. 通过键盘使用该文件系统,系统应显示操作命令的执行结果. 3.设计方案及论证结果设计方案:本系统一共建立了Administrator 和 Guest 两个用户, 每个用户拥有一个结构体数组为 struct Flie fa8 和 s
3、truct Flie fg8 每个用户最多可一建立8 个文件, 每个文件对应一个文件模块;文件模块:struct Flie int ed; /判断是否正存放文件char f_name8; /文件名char f_c8; /存放文件内容int att ; / 文件属性0 为只读1 为只写 ;文件模块示意图:函数设计和功能分析:系统调用原型功能主要参数说明void check() 密码认证admin 为函数出口int init() 初始化操作界面返回 i 执行相应的操作void createfile() 创建文件name 为文件名 -fa.f_name void deletefile() 删除文件v
4、oid openfile() 打开文件void exit() 退出系统void writefile() 书写文件c 为文件内容 -fa.f_c void copyfile() 复制文件void modifyfile() 修改属性a 为文件属性 -fa.att void catalogue() 目录管理ed f_name8 att f_c8名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 19 页 - - - - - - - - - xx 计算机科学与技术学院课程设计报告Ma
5、in() 函数的流程图: 消注?成功 ? 开始用户登陆N Y 接收命令解析命令实现命令结束N 选择用户退出N Y Y 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 19 页 - - - - - - - - - xx 计算机科学与技术学院课程设计报告4.系统的原理框图: 5.设计程序 :#include #include /*不容易归类的标准函数库*/ #include struct Flie int ed; /判断是否正存放文件char f_name8; /文件名cha
6、r f_c8; /存放文件内容int att ; / 文件属性0 为只读1 为只写/用于指向文件内容模块fa8,fg8; int x; /全局钥匙void check() /密码认证 int check,a=1; char pin1=admin; / 此处设定用户口令char pin20; AdministratorGuest flie1 flie2 flie1 flie2 ed f_name att f_c 文件名文件属性文件内容判断存储状ed f_name att f_c 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师
7、精心整理 - - - - - - - 第 4 页,共 19 页 - - - - - - - - - xx 计算机科学与技术学院课程设计报告while(a) printf(* * * * * * * * * * * * * * * * * * * * * * * * * * * *n); printf( * 文件管理系统用户登录*n); printf(* * * * * * * * * * * * * * * * * * * * * * * * * * * *n); printf( 请选择用户 :n); printf( 1.Administrator 2.Guest 3.退出系统 n); sca
8、nf(%d,&x); getchar(); if(x=3) system(cls); break; printf( 密码:); scanf (%s,pin); check=strcmp(pin,pin1); if (check!=0) system(cls); printf(n 密码错误 ! 请重新输入 :n); else system(cls); a=0; void createfile() /* 创建文件操作*/ int handle=1,a,check,i,j,h; char name8,pin8; while(1) printf(* * * * * * * * * * * * * *
9、* * * * * * * * * * * * * *n); printf( * 创建文件*n); printf(* * * * * * * * * * * * * * * * * * * * * * * * * * * *n); printf( 请输入所要创建的文件名称:n); scanf(%s,name); if(x=1) for( i=0;i8;i+) for(j=0;j8;j+) pinj=fai.f_namej; check=strcmp(pin,name); if (check!=0) else printf(n 创建错误 !文件已经存在!); handle=0; getchar(
10、); break; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 19 页 - - - - - - - - - xx 计算机科学与技术学院课程设计报告 if(handle=1) for(h=0;h8;h+) if(fah.ed=0) strcpy(fah.f_name,name); while(1) printf(n请选择文件属性(0.只读- 1.只写 ):); scanf(%d,&a); getchar(); if(a=0|a=1) fah.att=a; printf
11、(n 创建文件成功.n); fah.ed=1; break; else printf( 错误 ! 请重新输入 :n); break; getchar(); break; if(x=2) for( i=0;i8;i+) for(j=0;j8;j+) pinj=fgi.f_namej; check=strcmp(pin,name); if (check!=0) else printf(n 创建错误 !文件已经存在!); handle=0; break; if(handle=1) for(h=0;h8;h+) if(fah.ed=0) strcpy(fgh.f_name,name); while(1
12、) printf(n请选择文件属性(0.只读- 1.只写 ):); scanf(%d,&a); getchar(); if(a=0|a=1) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 19 页 - - - - - - - - - xx 计算机科学与技术学院课程设计报告 fgh.att=a; printf(n 创建文件成功.n); fgh.ed=1; getchar(); break; else printf( 错误 ! 请重新输入 :n); break; break
13、; void deletefile() /*删除文件的操作*/ int status=0,j=0,i,check,choice; char name8,pin8; while(1) system(cls); printf(* * * * * * * * * * * * * * * * * * * * * * * * * * * *n); printf( * 删除文件*n); printf(* * * * * * * * * * * * * * * * * * * * * * * * * * * *n); if(x=1) printf( 请输入所要删除的文件名称:n); scanf(%s,nam
14、e); /*输入要删除的文件名*/ printf(n 请确认 (0 - 1):); scanf(%d,&choice); getchar(); if(choice=1) for( i=0;i8;i+) for(j=0;j8;j+) pinj=fai.f_namej; check=strcmp(pin,name); if (check!=0) else status=1; if(fai.att=0) /*获取文件的状态,是否存在并且是否只读*/ j=1; if(j=1) printf(n删除错误 ! 文件为只读文件!); / 只读文件 else if(j!=0) /从目录中删除一个文件 strc
15、py(fai.f_name, ); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 19 页 - - - - - - - - - xx 计算机科学与技术学院课程设计报告strcpy(fai.f_c, ); fai.ed=0; printf(n删除文件成功.); getchar(); break; if(status!=1) printf(n 删除错误 ! 所要删除的文件不存在!n);/* 文件不存在 */ getchar(); break; if(x=2) printf(
16、 请输入所要删除的文件名称:n); scanf(%s,name); /*输入要删除的文件名*/ printf(n 请确认 (0 - 1):); scanf(%d,&choice); getchar(); if(choice=1) for( i=0;i8;i+) for(j=0;j8;j+) pinj=fgi.f_namej; check=strcmp(pin,name); if (check!=0) else status=1; if(fgi.att=0) /*获取文件的状态,是否存在并且是否只读*/ j=1; if(j=1) printf(n删除错误 ! 文件为只读文件!); / 只读文件
17、else if(j!=0) /从目录中删除一个文件函数 strcpy(fgi.f_name, ); strcpy(fgi.f_c, ); fgi.ed=0; printf(n删除文件成功.); break; getchar(); break; if(status!=1) printf(n 删除错误 ! 所要删除的文件不存在!);/* 文件不存在 */ getchar(); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 19 页 - - - - - - - - - xx
18、计算机科学与技术学院课程设计报告 break; void openfile() /* 打开文件操作*/ int i,a=0,j,check; char name8,pin8; printf(* * * * * * * * * * * * * * * * * * * * * * * * * * * *n); printf( * 打开文件*n); printf(* * * * * * * * * * * * * * * * * * * * * * * * * * * *n); printf( 请输入您所要打开文件的名称: n); scanf(%s,name); getchar(); if(x=1)
19、 for( i=0;i8;i+) for(j=0;j8;j+) pinj=fai.f_namej; check=strcmp(pin,name); if (check!=0) else printf(%s,fai.f_c); a=1; if(a!=1) printf( 文件不存在 !); getchar(); else if(x=2) for( i=0;i8;i+) for(j=0;j8;j+) pinj=fgi.f_namej; check=strcmp(pin,name); if (check!=0) else printf(%s,fgi.f_c); a=1; if(a!=1) print
20、f( 文件不存在 !); getchar(); void writefile() /* 书写文件 */ 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 19 页 - - - - - - - - - xx 计算机科学与技术学院课程设计报告int i,j,check,b=1; char ch=0,a=0,name8,c8,pin8; while(b) printf(* * * * * * * * * * * * * * * * * * * * * * * * * * * *n
21、); printf( * 书写文件*n); printf(* * * * * * * * * * * * * * * * * * * * * * * * * * * *n); printf( 请输入要书写的文件的名称:n); scanf(%s,name); if(x=1) for( i=0;i8;i+) /*获取文件的状态,是否存在*/ for(j=0;j8;j+) pinj=fai.f_namej; check=strcmp(pin,name); if (check!=0) else if(fai.att=0) printf( 书写错误 !只读文件 !n); a=1; getchar();
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年2022年课程设计文件管理系统设计 2022 课程设计 文件 管理 系统 设计
限制150内