数据库简单文件管理系统的设计及实现课程设计讲解
简单的文件管理系统-C课程设计

课程设计报告(本科)课程:高级语言程序设计学号:姓名:班级:2011级计算机软件1班教师:时间:2011.12计算机科学与技术系C语言程序代码附录:#include "stdio.h"#include "stdlib.h"#define N 40 /* 宏定义*/int main() /* 主函数*/{void dir();void rename();void del();void move();void copy(); /* 函数声明*/int a;for(;a!=0;) /*死循环,如果用户输入的不是0执行循环*/{printf("\n\n\n");printf("\t\t********************************************\n"); /*屏幕上显示主界面*/printf("\t\t** 欢迎使用文件管理系统 **\n");printf("\t\t********************************************\n");printf("\t\t**\t1.查看文件(只适用文本文件) **\n");printf("\t\t**\t2.重命名文件 **\n");printf("\t\t**\t3.删除文件 **\n");printf("\t\t**\t4.移动文件 **\n");printf("\t\t**\t5.复制文件 **\n");printf("\t\t**\t0.退出系统 **\n");printf("\t\t********************************************\n");printf("\t\t请选择要进行的操作(按enter键执行!):"); /*提示用户输入*/scanf("%d",&a); /*接受用户输入*/switch(a){case 1: dir(); break; /*如果用户输入1调用dir()函数查看文件*/case 2: rename(); break; /*如果用户输入2调用rename()函数-文件*/case 3: del(); break; /*如果用户输入3调用del()函数-删除文件*/case 4: move(); break; /*如果用户输入4调用move()函数-移动文件*/case 5: copy(); break; /*如果用户输入5调用copy()函数-复制文件*/case 0: printf("\t\t谢谢使用!!\n");break; /*如果用户输入0 ,结束循环!退出程序*/default: {printf("输入有误,自动结束!\n");a=0;} /*如果用户输入有误,将0赋给a结束循环*/}}return 0;}void dir() /*dir()函数*/{int a; /*定义变量a,接收用户的操作选择*/for(;a!=0;) /*死循环*/{FILE *fp; /*定义文件指针*/char ch,filename[N];printf("请输入要查看的文本文件(如d:\\1.txt):");/*提示用户输入*/scanf("%s",filename);if((fp=fopen(filename,"r"))==NULL) printf("无法找到该文件!\n");/*打开文件操作*/else{ch=fgetc(fp); /*将fp文件的字符赋给ch*/while(ch!=EOF) /*循环直到遇到文件结束标识符结束*/{putchar(ch); /*将字符ch输出到屏幕上*/ch=fgetc(fp); /*将fp文件的下一个字符赋给ch*/}}fclose(fp); /*关闭文件*/printf("\n\n\t1.继续。
数据库课程设计说明书---设计简易的数据库管理系统DBMS

一、设计要求:(1) 设计内容创建和修改表的定义:1、实现:CREATE TABLE <表名> (<列名><数据类型>[<列完整性约束条件>][,<列名><数据类型>[<列完整性约束条件>]…][,<表完整性约束条件>] );2、实现:ALTER TABLE <表名> [ADD <新列名><数据类型>[<列完整性约束>]] [DROP<列完整性约束名>][MODIFY <列名><数据类型>]。
(2) 设计要求1、设计和实现表的物理存储结构;2、语句以命令行和图形化界面两种形式实现;3、分析设计内容,画出程序流程图,设计表的存储结构;4、提交课程设计报告。
(3) 任务步骤1、分析命令语句,得到表名、列名和数据类型等信息;2、根据命令中的关键词确定表和字段的属性;3、创建一个表文件,写入表结构信息;4、打开一个表文件,修改表结构信息;5、演示建立了一个表,并修改了表结构。
二、需求分析:数据库系统能够有效地组织和管理大量的数据。
研究数据库管理系统的实现技术,对于掌握数据库系统的原理和技术,了解数据库系统的内部结构,开发高效的数据库应用系统,具有重要意义。
在建立了数据库之后,首先需要建立表,之后才能进行记录的插入。
这个程序的设计就是实现创建和修改表的定义。
三、设计思想:(1)总体思路此课程设计主要要完成的任务是创建和修改表的定义,因此程序中共包含四个可选项:“新建表”、“修改表”、“显示表的信息”、“保存操作并退出”。
另外,由于是数据库的操作,因此需要将建立的表的信息存储,在执行程序时应该调用已存储的表的信息,并且应该有日志文件以记录对表的操作。
下面依次介绍主要结构、保存表信息、提取表信息、日志文件和主菜单中的四个选项;(2)主要结构1、每一个都有一个固定结构,因此我首先建立了一个表的结构体,具体形式如下:typedef struct{char table_name[10];//表名int property_num;//属性的个数char property_name[10000][10];//属性名int property_type[1000];//属性类型(1=int,2=char)int property_null[100];//属性是否为空(1=允许,2=不允许)int property_key[10];//是否主码(1=是主键,2=不是主键)}TABLE;2、我用一个TABLE型的数组将所有的表联系在一起,具体定义为TABLE table[10000];3、定义一个int型变量记录表的个数,具体定义为int table_num=0。
数据库简明系统教程课程设计

数据库简明系统教程课程设计一、课程背景数据库是现代计算机科学中重要的一部分,理解数据库概念和技术对于学生未来的就业和学习很重要。
本课程将介绍基本的数据库概念和理论,以及如何设计、实现和管理一个数据库系统。
学生将通过本课程学习到:•数据建模和范式;•SQL语言基础;•数据库管理系统的基本概念和原理;•数据库性能优化;•数据库安全和备份。
二、课程目标本课程旨在为学生提供一些关键的概念和技能,使他们能够理解和应用数据库系统在现实世界中的重要性。
学生将学习如何设计和实现一个简单的数据库系统,包括:•数据库建模和设计;•数据库运维和维护;•数据库查询和优化;•数据库安全和备份。
三、课程内容3.1 数据库基础•数据库基础概念和术语;•关系型数据库原理和范式;•SQL语言基础;•数据库建模和设计。
3.2 数据库管理•数据库管理系统(DBMS)的基本概念和原理;•数据库安装和配置;•数据库对象(表、索引、视图、存储过程、触发器)的创建和管理;•数据库运维和维护(备份、恢复、性能优化、错误处理)。
3.3 数据库应用•数据库查询和优化;•数据库安全和权限;•应用程序与数据库的集成;•数据库系统的实际应用。
3.4 课程设计课程设计分为以下三个部分:3.4.1 数据库设计学生将设计一个简单的数据库系统,包括:•需求分析;•数据建模和设计;•数据库实现和测试。
3.4.2 数据库查询与优化学生将完成以下任务:•提出几个复杂的数据库查询需求;•实现查询SQL语句;•对查询SQL语句进行性能优化。
3.4.3 数据库系统实战应用学生将选择一个实际的应用场景,并设计、实现、部署和测试一个简单的数据库系统。
四、课程评价•合理的课程难度和进度;•丰富的教学内容和教学方式;•实践项目和考试的平衡;•良好的学生互动和参与度。
五、结论本课程是一门基础课程,可以为计算机科学及相关专业的大学本科生提供一些重要的数据库知识和技能。
它能够帮助学生了解和理解数据库技术在现实世界中的应用,为学生未来的就业和学习提供一个坚实的基础。
数据库管理系统课程设计

数据库管理系统课程设计一、课程目标知识目标:1. 理解数据库管理系统的基本概念,掌握数据库的基本结构;2. 学会使用SQL语言进行数据库的基本操作,包括数据的增、删、改、查;3. 了解数据库设计的基本原则,掌握实体-关系模型和关系模型的基本应用;4. 掌握数据库的安全性和一致性控制方法。
技能目标:1. 能够独立使用数据库管理系统建立、管理和维护数据库;2. 能够运用SQL语言进行复杂的数据查询和操作;3. 能够根据实际需求进行简单的数据库设计和优化;4. 能够分析和解决数据库应用中的一般性问题。
情感态度价值观目标:1. 培养学生对数据库管理系统学科的兴趣和热情,激发其主动学习的动力;2. 培养学生的团队协作精神,使其在小组讨论和项目中能够互相支持、共同进步;3. 培养学生严谨、务实的学术态度,使其具备良好的数据管理和数据处理素养;4. 通过数据库管理系统在实际案例中的应用,培养学生的社会责任感和创新意识。
二、教学内容1. 数据库基本概念:数据库、数据库管理系统、数据库系统;2. 数据模型:实体-关系模型、关系模型;3. 关系数据库:关系代数、SQL语言、数据定义、数据操纵、数据查询、视图和索引;4. 数据库设计:需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库实施与维护;5. 数据库安全性与一致性:安全性控制、事务管理、并发控制、故障恢复;6. 数据库应用案例分析:学生信息管理系统、图书馆管理系统等。
教学内容安排与进度:第一周:数据库基本概念、数据模型;第二周:关系数据库、SQL语言;第三周:数据库设计;第四周:数据库安全性与一致性;第五周:数据库应用案例分析及小组项目实践。
教材章节及内容:第一章:数据库基本概念(1.1-1.3节);第二章:数据模型(2.1-2.3节);第三章:关系数据库(3.1-3.5节);第四章:数据库设计(4.1-4.4节);第五章:数据库安全性与一致性(5.1-5.4节);第六章:数据库应用案例分析(6.1-6.2节)。
课程管理系统数据库设计及实现

大学课程设计报告课程设计题目:“课程管理系统”数据库设计与实现学院:专业班级:年级:姓名:学号:完成时间:年月日成绩:指导教师:目录第1章课程管理系统功能需求分析第2章课程管理系统概念结构设计2.1设计E-R图2.2 E-R模型向关系模型的转换第3章创建视图与索引,授予用户权限3.1创建视图3.2 创建索引3.3 授予权限正文一、需求分析1.近年来,随着各大高校的规模不断扩大,生源的急剧增加,有关学生的各种信息量也成倍增长。
面对庞大的信息量,需要建立一个课程管理系统来提高管理质量,让老师减轻工作量,提高工作效率。
建立课程管理系统就是为了实现信息的规范管理、科学统计与快速查询,从而减少管理方面的工作量。
课程管理系统主要提供教师、学生的学籍管理、成绩管理与课程管理功能。
2.需求功能分析:教师与学生的登录学生学籍的添加、修改、删除、查询课程管理的添加、修改、删除、查询教师授课的安排3.用户需求分析用户的需求具体体现在各种信息的提供、保存、更新、查询方面,这就要求数据库机构能充分满足各种信息的输入与输出。
收集基本数据、数据结构以及数据处理流程,组成一份详尽的数据字典,为后面的具体设计打下基础。
针对课程管理系统的需求,通过对课程管理系统的设计与数据流程的分析,设计如下所示的数据项与数据存储表:登录信息:包括用户号、密码、权限学籍信息:包括用户号、姓名、性别、出生日期、班级、入学日期、家庭住址、电话课程信息:包括课程号、课程名、类型、教师名4.统的总体结构设计该系统共有三个模块:登陆模块、学籍管理模块、课程信息模块。
这几个模块同时还包括数据添加、数据修改、数据删除、数据查询等几个基本操作。
(1)登录模块在登录界面中教师与学生可登录。
在登录界面中分别填入用户名、密码与身份,然后按确认键登录。
如果填入信息有误则弹出错误信息的提示窗口,重新返回登陆窗口。
如果填入信息正确则要根据登录信息表中登录者的权限(“0”或“1”)分别进入教师(“1”)或学生(“0”)管理系统主界面。
数据库简单文件管理系统的设计及实现课程设计讲解

课程设计(论文)任务书学院计算机科学与技术专业班一、课程设计(论文)题目简单文件管理系统的设计及实现二、课程设计(论文)工作自 2013 年 12 月30 日起至 2014 年 1 月 3 日止。
三、课程设计(论文) 地点: ____________________5#204 _______四、课程设计(论文)内容要求:1.本课程设计的目的(1)掌握使用进行文件管理设计的基本思想和方法;(2)提高运用文件管理理论解决实际问题的能力;(3)了解文件管理开发的基本知识,熟悉一门数据库开发工具;(4)培养学生调查研究、查阅技术文献、分析和解决问题的能力;(5)提高学生的科技论文写作能力。
2.课程设计的任务及要求1)基本要求:(1)进行简单文件管理系统设计的基本思想和方法的学习与研究;(2)进行简单文件管理系统开发技能的学习;(3)提出简单文件管理系统的设计方案;(4)对系统进行调试,得出实现效果。
2)创新要求:在基本要求达到后,可进行创新设计,如改善算法性能;友好的人机界面等。
3)课程设计论文编写要求(1)要按照书稿的规格打印与写课程设计论文;(2)论文包括目录、功能描述、设计思路、具体实现、运行调试与分析讨论、设计体会与小结、参考文献、附录等;(3)课程设计论文装订按学校的统一要求完成。
4)答辩与评分标准:(1)考勤与学习态度:20分;(2)设计思路:20分;(3)代码实现:20分;(4)调试与分析:20分;(5)回答问题:10分;(6)论文规范性:10分。
5)参考文献:(1)汤子瀛,汤小丹《计算机操作系统》西安电子科技大学出版社;(2)张大治,王辉《Visual C#程序设计》清华大学出版社;(3)/html/6/category-catid-6.html/6)课程设计进度安排内容天数地点构思及收集资料2图书馆组装与调试5实验室撰写论文3图书馆、实验室学生签名:_杜宝宝___2014 年1 月3 日课程设计(论文)评审意见(1)完成原理分析(20分):优()、良()、中()、一般()、差();(2)设计分析(30分):优()、良()、中()、一般()、差();(3)完成调试(30分):优()、良()、中()、一般()、差();(4)回答问题(20分):优()、良()、中()、一般()、差();(5)格式规范性及考勤是否降等级:是()、否()评阅人:职称:讲师目录1.绪论 (4)2.设计说明 (5)3.概要设计 (5)4.详细设计 (6)4.1系统功能图 (6)4.2系统设计 (6)4.3负责的功能模块 (7)5.功能的调试和相关截图 (10)6.心得体会和总结 (12)7.参考文献 (12)8.程序附录 (13)绪论在计算机的所有资源中,其中文件系统资源的管理尤其重要。
数据管理系统课程设计

数据管理系统课程设计一、课程目标知识目标:1. 学生能理解数据管理系统的基本概念,掌握数据库的基本结构;2. 学生能掌握数据查询、更新、删除等基本操作,并了解其执行过程;3. 学生能了解数据安全性和一致性的重要性,并掌握相关保障措施。
技能目标:1. 学生能够运用所学知识设计简单的数据库系统,实现数据的有效存储和查询;2. 学生能够熟练使用至少一种数据库管理系统(如MySQL、SQLite等)进行基本的数据操作;3. 学生能够通过编程(如Python、Java等)实现对数据库的访问和操作。
情感态度价值观目标:1. 学生能够认识到数据管理系统在现实生活中的广泛应用和价值,培养对信息技术的兴趣和热情;2. 学生能够树立数据安全意识,养成良好的数据管理和保护习惯;3. 学生能够在团队协作中发挥个人优势,培养合作精神和沟通能力。
课程性质:本课程为信息技术课程,旨在帮助学生掌握数据库管理的基本知识和技能,提高数据处理和分析能力。
学生特点:六年级学生已具备一定的计算机操作基础,对信息技术感兴趣,好奇心强,但注意力容易分散。
教学要求:结合学生特点,课程设计应注重实践性、趣味性和挑战性,鼓励学生动手操作,培养其解决问题的能力。
同时,注重培养学生的学习兴趣和团队协作精神。
通过本课程的学习,使学生能够将所学知识应用于实际生活,提高数据处理能力。
二、教学内容1. 数据库基本概念:数据库、数据库管理系统、数据模型、关系模型;2. 数据库设计:实体、属性、关系、E-R图、数据表设计;3. 数据操作:数据的插入、查询、更新、删除操作,SQL语句编写;4. 数据库管理:数据安全性、数据一致性、事务管理、并发控制;5. 数据库访问技术:通过编程语言(如Python、Java等)访问数据库;6. 实践项目:设计并实现一个简单的数据库应用系统。
教学大纲安排:第一课时:数据库基本概念,介绍数据库及数据库管理系统的定义,了解关系模型;第二课时:数据库设计,学习实体、属性、关系,绘制E-R图,设计数据表;第三课时:数据操作,学习SQL语句编写,进行数据的插入、查询、更新、删除操作;第四课时:数据库管理,了解数据安全性和一致性,学习事务管理和并发控制;第五课时:数据库访问技术,学习使用编程语言(以Python为例)访问数据库;第六课时:实践项目,分组设计并实现一个简单的数据库应用系统,如学生信息管理系统。
文件管理系统课程设计

文件管理系统课程设计文件管理系统是现代科技发展必备的应用程序之一,它能够极大地提高我们的工作效率和准确性,实现文档管理的自动化和规范化。
本文将结合管理学、计算机科学和信息系统等多学科知识,设计一款简单易用的文件管理系统。
其主要功能包括:文档管理、权限控制、版本控制、搜索、共享与协作等。
首先,我们来看文档管理。
文件管理系统的核心功能即是将各种文档进行分类、命名、保存、修改、备份等操作,同时通过多种方式查找、浏览、打印文档。
基本需求包括:文件名、文件类型、文件大小、文件修改时间等基本信息的收集、分类、存储和检索。
系统应该能够支持多种文档类型,如Office文档、PDF、图片、音视频等,同时能够对这些文件进行分类管理。
这些文件应该可以进行删、查、改、增操作。
此外,为了保障文件的安全性,可以设计一个回收站,并提供自动备份和恢复功能,以免意外丢失文件。
其次,权限控制也是一个非常关键的功能。
在企业、学校等组织中,文件的管理需要严格进行权限控制。
系统可以设置用户权限,确保每个用户仅能访问与其工作相关的文件,同时防止部分用户恶意删除、修改他人的文件。
系统还应允许管理员根据管理需求设置不同的角色,并允许管理员对角色进行一定范围的权限调整。
版本控制也是文档管理系统不可或缺的功能。
在多人对同一文档进行编辑时,系统应能够自动对文件进行版本管理。
比如每次编辑保存时,系统将自动保存上一次备份,以避免因编辑过程中,被人破坏、删除等操作,丢失重要的数据。
同时历史版本也可以通过文件恢复的选项进行恢复。
搜索功能也很重要。
当文件数量众多时,想要查找一个特定的文件就需要用到搜索功能。
系统应该提供多个关键词、文件类型、大小、日期等搜索条件,同时支持汉语拼音、英文单词等多种搜索方式,以尽可能地满足用户的搜索需求。
在使用搜索功能时,系统可以提供相关的关键字推荐,以便用户方便快捷地找到所需文件。
最后,共享与协作功能是文档管理系统的另一个亮点。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计(论文)任务书学院计算机科学与技术专业班一、课程设计(论文)题目简单文件管理系统的设计及实现二、课程设计(论文)工作自 2013 年 12 月30 日起至 2014 年 1 月 3 日止。
三、课程设计(论文) 地点: ____________________5#204 _______四、课程设计(论文)内容要求:1.本课程设计的目的(1)掌握使用进行文件管理设计的基本思想和方法;(2)提高运用文件管理理论解决实际问题的能力;(3)了解文件管理开发的基本知识,熟悉一门数据库开发工具;(4)培养学生调查研究、查阅技术文献、分析和解决问题的能力;(5)提高学生的科技论文写作能力。
2.课程设计的任务及要求1)基本要求:(1)进行简单文件管理系统设计的基本思想和方法的学习与研究;(2)进行简单文件管理系统开发技能的学习;(3)提出简单文件管理系统的设计方案;(4)对系统进行调试,得出实现效果。
2)创新要求:在基本要求达到后,可进行创新设计,如改善算法性能;友好的人机界面等。
3)课程设计论文编写要求(1)要按照书稿的规格打印与写课程设计论文;(2)论文包括目录、功能描述、设计思路、具体实现、运行调试与分析讨论、设计体会与小结、参考文献、附录等;(3)课程设计论文装订按学校的统一要求完成。
4)答辩与评分标准:(1)考勤与学习态度:20分;(2)设计思路:20分;(3)代码实现:20分;(4)调试与分析:20分;(5)回答问题:10分;(6)论文规范性:10分。
5)参考文献:(1)汤子瀛,汤小丹《计算机操作系统》西安电子科技大学出版社;(2)张大治,王辉《Visual C#程序设计》清华大学出版社;(3)/html/6/category-catid-6.html/6)课程设计进度安排内容天数地点构思及收集资料2图书馆组装与调试5实验室撰写论文3图书馆、实验室学生签名:_杜宝宝___2014 年1 月3 日课程设计(论文)评审意见(1)完成原理分析(20分):优()、良()、中()、一般()、差();(2)设计分析(30分):优()、良()、中()、一般()、差();(3)完成调试(30分):优()、良()、中()、一般()、差();(4)回答问题(20分):优()、良()、中()、一般()、差();(5)格式规范性及考勤是否降等级:是()、否()评阅人:职称:讲师目录1.绪论 (4)2.设计说明 (5)3.概要设计 (5)4.详细设计 (6)4.1系统功能图 (6)4.2系统设计 (6)4.3负责的功能模块 (7)5.功能的调试和相关截图 (10)6.心得体会和总结 (12)7.参考文献 (12)8.程序附录 (13)绪论在计算机的所有资源中,其中文件系统资源的管理尤其重要。
文件系统作为一个统一的信息管理机制,应具有下述功能:(1)统一管理文件存储空间(即外存),实施存储空间的分配与回收。
即在用户创建新文件时为其分配空闲区,而在用户删除或修改某个文件时,回收和调整存储区。
(2)确定文件信息的存放位置及存放形式。
(3)实现文件从名字空间到外存地址空间的映射,实现文件的按名存取。
即文件有一个用户可见的逻辑结构,用户按照文件逻辑结构所给定的方式进行信息的存取和加工,并且这种逻辑结构是独立于物理存储设备的,从而使用户不必了解文件存放的物理结构和查找方法等与存取介质有关的部分,只需给定一个代表某一文件的文件名,文件系统就会自动地完成对与给定文件名相对应文件的有关操作。
(4)有效实现对文件的各种控制操作(如建立、撤销、打开、关闭文件等)和存取操作(如读、写、修改、复制、转储等)。
(5)实现文件信息的共享,并且提供可靠的文件保密和保护措施。
因而,我们必须为操作系统设置一个文件管理系统来实现对文件资源的全方位管理,使得文件资源得到合理的应用。
好的文件管理系统可以让我们合理的管理我们的文档和自己独有的资料,省去我们对资源进行从头到尾梳理的麻烦,是一种有效的管理工具。
一、设计说明1.设计目的本次操作系统实验的目的是实现一个类似Windows系统中“我的电脑”功能的文件管理系统。
2.设计要求在文件管理系统中可以对系统中所有文件进行管理,同时具有创建新文件、删除文件、复制文件、修改文件、创建文件夹等功能。
3.设计环境Visual C++6.0,Windows 74.组员三人一组其中负责的是:新建文件模块、删除文件模块;负责的是:打开文件模块,登陆界面跟主界面;负责的是:复制粘贴文件模块和修改文件模块。
二、概要设计本次操作系统实验的目的是实现一个类似Windows系统中“我的电脑”功能的文件管理系统,在此文件系统中可以对系统中所有文件进行管理,同时具有创建新文件、删除文件、复制文件、创建文件夹等功能,所以基于这些要求我们设计了这样一个简单的文件管理系统。
开始先设计一个系统界面,包括几个部分:首先是导航栏的设计,有文件和编译两个功能。
其中文件有新建(新建文件和文件夹)和退出,编译中有复制、粘贴和删除。
最后是当前信息显示,能够清晰的显示当前目录中的所有文件夹和文件的信息。
当选择其中一个盘块后,就进入这个盘,在当前目录下我们进行以下几个操作:(1)新建文件夹和文件:输入想要新建的文件,会出现一个窗口显示新建信息(包括当前属性和新建文件夹名)新建文件夹也同样如此,有一点不同就是有了文件名的类型要自己在文件名后面自己加。
(2)删除文件夹和文件信息:输入想要删除的文件便可以删除相关文件。
(3)复制粘贴:输入想要复制的文件名,然后系统会提示是否进行粘贴,选择“是”就可以了。
(4)打开文件:输入想要打开文件的序号便可以打开相关文件。
(5)修改文件:输入想要修改的文件或属性便可以修改相关信息。
三、详细设计1.系统功能图:2.系统设计:2.1函数声明:void check() //密码认证void createfile() //创建文件操作void deletefile() //删除文件void openfile() //打开文件void modifyfile() //修改文件void copyfile() //复制void catalogue() //目录管理子程序int init() //初始化操作界面函数2.2数据结构说明:本系统每个用户拥有结构体数组为struct Flie fa[8]和struct Flie fg[8],每个用户最多可建立8个文件,每个文件对应一个文件模块。
文件模块:struct Flie{int ed; //判断是否正存放文件char f_name[8]; //文件名char f_c[8]; //存放文件内容int att ; // 文件属性0为只读1为只写,用于指向文件内容模块}fa[8],fg[8];3.负责的功能模块:我们的这个系统功能模块共有5个模块,其中我负责的是复制粘贴文件模块和修改文件模块。
3.1主函数如下:采用的是switch选择函数来进行模块功能的选择。
switch(i)case 1: //创建文件case 2: //除文件case 3: //打开文件case 4: //修改文件case 5: //复制、粘贴文件case 6: //文件目录管理3.2复制粘贴文件模块:要进行复制粘贴操作,用户先要选中文件信息执行复制命令,系统将需要复制的文件路径信息保存,然后到达复制文件的目标位置,执行粘贴命令,调用相应函数,先在目标位置创建文件夹,如果同一目录下存在该文件夹,则弹出提示信息,然后将目标文件夹和文件依次复制到目标目录下。
流程图如下:相关函数和程序体如下:void copyfile() //复制,粘贴文件;{int h;char name[8];int j;if(x==1){for(h=0;h<k;h++){printf("文件名为:%s\n",fa[h].f_name);printf("文件属性:%d\n",fa[h].att);printf("文件内容:%s\n",fa[h].f_c);printf("******************\n");}printf("请输入需要复制的文件名:");scanf("%s",name);for(h=0;h<k;h++){if(strcmp(name,fa[h].f_name)==0)printf("复制文件成功!\n");if(k<8){printf("进行粘贴吗?请选择:1.YES 2.N0T\n");scanf("%d",&j);if(j==1){fa[k].att=fa[h].att;fa[k].ed=fa[h].ed;strcpy(fa[k].f_c,fa[h].f_c);strcpy(fa[k].f_name,fa[h].f_name);printf("粘贴成功:\n");k=k+1;Sleep(1000);for(h=0;h<k;h++){printf("文件名为:%s\n",fa[h].f_name);printf("文件属性:%d\n",fa[h].att);printf("文件内容:%sn",fa[h].f_c);printf("文件状态:%d\n",fa[h].ed);printf("********************\n");Sleep(2000);}break;}}}}if(x==2){for(h=0;h<k;h++){printf("文件名为:%s\n",fg[h].f_name);printf("文件属性:%d\n",fg[h].att);printf("文件内容:%s\n",fg[h].f_c);printf("******************\n");}printf("请输入需要复制的文件名:");scanf("%s",name);for(h=0;h<k;h++){if(strcmp(name,fg[h].f_name)==0)printf("复制文件成功!\n");if(k<8){printf("进行粘贴吗?请选择:1.YES 2.N0T:1.YES 2.N0T\n");scanf("%d",&j);if(j==1){fg[k].att=fg[h].att;fg[k].ed=fg[h].ed;strcpy(fg[k].f_c,fg[h].f_c);strcpy(fg[k].f_name,fg[h].f_name);printf("粘贴成功:\n");Sleep(1000);k=k+1;for(h=0;h<k;h++){printf("文件名为:%s\n",fg[h].f_name);printf("文件属性:%d\n",fg[h].att);printf("文件内容:%s\n",fg[h].f_c);printf("文件状态:%d\n",fg[h].ed);printf("********************\n");Sleep(3000);}break;}}}}}3.3修改文件:要修改文件,首先要选定要修改的文件,系统将需要修改的文件路径信息保存,然后到达修改文件的目标位置,执行修改命令,调用相应函数,先在目标位置创建文件夹,如果同一目录下存在该文件夹,则弹出提示信息,然后将目标文件夹和文件依次修改。