當前位置:首頁 » 課程大全 » 文件管理系統課程設計

文件管理系統課程設計

發布時間: 2021-02-23 04:02:35

① 操作系統課程設計,C語言寫的文件管理系統

操作系統課程設計,C語言寫的文件管理系統 、。要求有沒,根據要求可以做的

② 操作系統課程設計

那麼多東西,怎麼說清?

③ 基於JSP的圖書管理系統的課程設計報告(含源文件)

jsp圖書管理系統報告+源文件怎麼搞
部分圖書管理系統源代碼已經發送給你, 報告的話需要自己寫, 主要是寫一下javaee基礎知識比如filter servlet jsp 以及mvc設計模式, 如何進行資料庫設計等等方面

④ 怎麼做一個模擬操作系統文件管理系統的課程設計

我有第一個、挺詳細的,一會發你郵箱,呵呵~~~~~
我的QQ是(312310032)北國的雨,呵呵

⑤ 基於二級文件目錄的文件管理系統設計的課程設計,用C++寫的

我有第一個、挺詳細的,一會發你郵箱,呵呵~~~~~
我的QQ是(312310032)北國的雨,呵呵

⑥ 學生信息管理系統課程設計

你確定實體先。然後在設計。
屬性這不挺明顯的嗎?
學生 課程 分數

⑦ 課程設計,模擬文件管理系統怎麼做

#include "stdio.h"
#include "stdlib.h"
#include "string.h"

//主文件結構體
struct MasterFile{
char username[20]; //用戶名
char password[20]; //用戶名密碼
char flag; //標志
struct MasterFile *next;
};
//用戶文件結構體
struct UserFile{
int fnum; //文件編號
char fname[20]; //文件名
int flength; //文件長度
char flag; //標志
char fpw[20]; //文件保護碼
struct UserFile *link;
};
//全局變數
int shoudsave; //存儲標記
int usingnum; //當前用戶標記
struct MasterFile MFD[20]; //主目錄
struct UserFile UFD[20][20]; //用戶目錄

//尋找主目錄空閑區
struct MasterFile*MoveMFDToLast(){

for(int i=0;i<20;i++){
if(MFD[i].flag==0)
usingnum=i;
return &MFD[i];
}
return NULL;
}
//查找用戶
struct MasterFile*SearchMFD(char str[]){
for(int i=0;i<20;i++){
if(strcmp(str,MFD[i].username)==0){
usingnum=i;
return &MFD[i];
}
}
return NULL;
}
//尋找用戶目錄空閑區
struct UserFile *MoveUFDToLast(){
for(int i=0;i<20;i++){
if(UFD[usingnum][i].flag==0)
return &UFD[usingnum][i];
}
return NULL;
}
//查找用戶文件
struct UserFile *SearchUFD(int num){
for(int i=0;i<20;i++){
if(UFD[usingnum][i].fnum==num)
return &UFD[usingnum][i];
}
return NULL;
}
//刪除用戶文件目錄
void LeftMoveUFD(int num){
for(int i=0;i<20;i++){
if(UFD[usingnum][i].fnum==num){
for(int j=i;j<19;j++){
UFD[usingnum][i].flag=UFD[usingnum][i+1].flag;
UFD[usingnum][i].flength=UFD[usingnum][i+1].flength;
strcpy(UFD[usingnum][i].fname,UFD[usingnum][i+1].fname);
UFD[usingnum][i].fnum=UFD[usingnum][i+1].fnum;
strcpy(UFD[usingnum][i].fpw,UFD[usingnum][i+1].fpw);
UFD[usingnum][i].link=UFD[usingnum][i+1].link;
}
}
}
}

//用戶登陸
void Login(){
char flag1,flag2,flag3;
char str1[20],str2[20],str3[20],str4[20];
struct MasterFile *p;
printf("你是已有用戶嗎(y/n)?");
scanf("%s",&flag1);
if(flag1=='n'){ //新用戶登錄
printf("請創建新的用戶:(y/n)");
scanf("%s",&flag2);
if(flag2=='n'){
printf("你已退出了系統!\n");
exit(1);
}else{
printf("請輸入你的用戶名:");
scanf("%s",&str1);
printf("請輸入口令:");
scanf("%s",&str2);
p=MoveMFDToLast();
strcpy(p->username,str1);
strcpy(p->password,str2);
p->flag=1;
printf("%d",MFD[usingnum].flag);
p->next=NULL;
shoudsave=1; //存儲標記
}
}else{ //舊用戶登錄
while(1){
printf("請輸入你的用戶名:"); //輸入用戶名
scanf("%s",&str3);
p=SearchMFD(str3);
if(p==NULL){
printf("對不起,你輸入的用戶名不存在!\n");
printf("繼續(y)還是放棄(n)?");
scanf("%s",&flag3);
if(flag3=='y') continue;
else{
printf("你已退出了系統!\n");
exit(1);
}
}else{
while(1){
printf("請輸入口令:"); //輸入口令
scanf("%s",&str4);
if(strcmp(str4,p->password)!=0){
printf("對不起,你輸入的口令不正確,請重新輸入.\n");
continue;
}else break;
}
}break;
}
}
}

//菜單
void menu(){
printf("\n********************************************************************************");
printf("\t1列文件目錄\t\t\t\t\t2創建文件\n");
printf("\t3刪除文件\t\t\t\t\t4讀文件\n");
printf("\t5寫文件\t\t\t\t\t\t0退出系統\n");
printf("********************************************************************************\n");
}
//列文件目錄
void Dir(){
if(MFD[usingnum].next==0) printf("目前你不存在任何文件!\n");
else{
for(int i=0;i<20;i++){
if(UFD[usingnum][i].flag==1)
printf("文件編號\t%d\t文件名\t%s\t文件長度\t%d\t保護碼\t%s\n",UFD[usingnum][i].fnum,UFD[usingnum][i].fname,UFD[usingnum][i].flength,UFD[usingnum][i].fpw);
}
}
}

//創建文件
void Create(){
FILE *fp;
int num;
struct UserFile *f;
char str1[20],str2[20];
printf("請輸入你要創建的文件名:"); //輸入文件信息
scanf("%s",&str1);
printf("請輸入文件編號:");
scanf("%d",&num);
printf("請輸入文件保護碼:");
scanf("%s",&str2);
fp=fopen(str1,"w"); //創建文件
f=MoveUFDToLast(); //尋找用戶目錄空閑區
if(&UFD[usingnum][0]==f) //連接主目錄
MFD[usingnum].next=(struct MasterFile*)f;
f->link=(struct UserFile*)fp; //設置用戶目錄
MFD[usingnum].next=(struct MasterFile*)&UFD[usingnum][0];
strcpy(f->fname,str1);
strcpy(f->fpw,str2);
f->fnum=num;
f->flength=0;
f->flag=1;
fclose(fp);
shoudsave=1; //設置存儲標記
printf("文件已創建!\n");
}
//刪除文件
void Delete(){
struct UserFile *f;
int num;
printf("請輸入你要刪除的文件編號:");
scanf("%d",&num);
f=SearchUFD(num); //查找用戶文件
if(f==NULL) {
printf("你要刪除的文件不存在!\n");
}else{
LeftMoveUFD(num); //刪除用戶文件目錄
printf("文件已刪除!\n");
}
shoudsave=1; //設置存儲標記
}
//讀文件
void Read(){
char ch;
struct UserFile *f;
FILE *fp;
int num;
printf("請輸入你要讀的文件的編號:");
scanf("%d",&num);
f=SearchUFD(num); //查找文件
if(f==NULL){
printf("你輸入的文件不存在!\n");
}else{
if((fp=fopen(f->fname,"r"))==NULL){ //打開指定文件
printf("不能打開該文件!\n");
exit(0);
}
}
ch=fgetc(fp); //輸出文件內容
while(ch!=EOF){
putchar(ch);
ch=fgetc(fp);
}
printf("\n");
fclose(fp); //關閉文件
printf("文件已讀完畢!\n");
}
//寫文件
void Write(){
char ch;
struct UserFile *f;
FILE *fp;
int num;
printf("請輸入你要寫的文件的編號:");
scanf("%d",&num);
f=SearchUFD(num); //查找文件
if(f==NULL){
printf("你輸入的文件不存在!\n");
}else{
if((fp=fopen(f->fname,"wr"))==NULL){ //打開指定文件
printf("不能打開該文件!\n");
exit(0);
}
}
printf("請按字元輸入內容(以'#'表示結束符)"); //寫入文件
scanf("%s",&ch);
while(ch!='#'){
fwrite(&ch,1,1,fp);
scanf("%s",&ch);
}
fclose(fp); //關閉文件
shoudsave=1; //設置存儲標記
printf("文件寫入完畢!\n");
}
//保存
void Save(){
FILE *fpm,*fpu;
int flag=1,count=0;
fpm=fopen("F:\\MasterFile.txt","wb"); //打開主文件
if(fpm==NULL){
printf("\n提示:重新打開主文件信息文件時發生錯誤!\n");
exit(1);
}
for(int i=0;i<20;i++)
fwrite(&MFD[i],sizeof(struct MasterFile),1,fpm); //保存主文件目錄信息
fclose(fpm);
printf("主文件目錄信息保存完畢!\n");
fpu=fopen("F:\\UserFile.txt","wb"); //打開用戶文件
if(fpu==NULL){
printf("\n提示:重新打開用戶目錄信息文件時發生錯誤!\n");
exit(1);
}
for(int j=0;j<20;j++) //保存用戶文件目錄信息
fwrite(&UFD[j],sizeof(struct UserFile),20,fpu);
fclose(fpu);
printf("用戶文件目錄信息保存完畢!\n");
}

//主函數
void main(){
FILE *fpm,*fpu; //文件指針
int sel;
char ch;
char jian;
printf("\t\t\t\t文件管理系統\n\t\t\t\t\n");
fpm=fopen("F:\\MasterFile.txt","rb"); //打開主文件目錄信息文件
if(fpm==NULL) {
printf("\n提示:主文件目錄信息文件還不存在,是否創建?(y/n)\n");
scanf("%s",&jian);
if(jian=='y'||jian=='Y')
fpm=fopen("F:\\MasterFile.txt","wb"); //創建主文件目錄的文件
else exit(0);
}
fpu=fopen("F:\\UserFile.txt","rb"); //打開用戶文件目錄信息文件
if(fpu==NULL){
printf("\n提示:用戶文件目錄信息文件還不存在,是否創建?(y/n)\n");
scanf("%s",&jian);
if(jian=='y'||jian=='Y')
fpu=fopen("F:\\UserFile.txt","wb"); //創建用戶文件目錄的文件
else exit(0);
}
printf("文件正在打開,請稍等...");
for(int i=0;i<20;i++) //讀取主文件目錄信息
fread(&MFD[i],sizeof(struct MasterFile),1,fpm); //將文件的內容放入接點中
fclose(fpm); // 關閉文件
while(!feof(fpu)){ //讀取用戶目錄文件信息
for(int i=0;i<20;i++){
if(fread(&UFD[i][0],sizeof(struct UserFile),20,fpu)) //將文件的內容放入接點中
MFD[i].next=(struct MasterFile*)&UFD[i][0];
}
}
fclose(fpu); //關閉文件
printf("\n文件已導入完畢!\n");
Login(); //用戶登錄
while(1) { //菜單操作
menu();
printf("請你選擇操作:");
scanf("%d",&sel);
if(sel==0){ //保存文件信息
if(shoudsave==1){
getchar();
printf("\n資料已經改動,是否將改動保存到文件中(y/n)?\n");
scanf("%c",&ch);
if(ch=='y'||ch=='Y')
Save();
}
printf("\n你已經退出系統,再見!\n");
break;
}
switch(sel){
case 1:Dir();break; //列文件目錄
case 2:Create();break; //創建文件
case 3:Delete();break; //刪除文件
case 4:Read();break; //讀文件
case 5:Write();break; //寫文件
default: printf("你輸的選項有誤,請重新輸入!\n");break;
}
}
}

⑧ 數據結構課程設計 簡單目錄管理系統的設計與實現

給點勞務費唄。保質量完成。

熱點內容
武漢大學學生會輔導員寄語 發布:2021-03-16 21:44:16 瀏覽:612
七年級學生作文輔導學案 發布:2021-03-16 21:42:09 瀏覽:1
不屑弟高考成績 發布:2021-03-16 21:40:59 瀏覽:754
大學畢業證會有成績單 發布:2021-03-16 21:40:07 瀏覽:756
2017信陽學院輔導員招聘名單 發布:2021-03-16 21:40:02 瀏覽:800
查詢重慶2018中考成績查詢 發布:2021-03-16 21:39:58 瀏覽:21
結業考試成績怎麼查詢 發布:2021-03-16 21:28:40 瀏覽:679
14中醫醫師資格筆試考試成績查分 發布:2021-03-16 21:28:39 瀏覽:655
名著賞析課程標准 發布:2021-03-16 21:27:57 瀏覽:881
北京大學商業領袖高端培訓課程 發布:2021-03-16 21:27:41 瀏覽:919