-
大小: 2KB文件類(lèi)型: .zip金幣: 2下載: 1 次發(fā)布日期: 2025-02-23
- 語(yǔ)言: C/C++
- 標(biāo)簽: 操作系統(tǒng)??文件調(diào)度??C語(yǔ)言??
資源簡(jiǎn)介
運(yùn)行成功,比較基礎(chǔ),登錄后,對(duì)文件進(jìn)行創(chuàng)建,刪除,打開(kāi),關(guān)閉,讀取,寫(xiě)入,保存,打印當(dāng)前文件功能

代碼片段和文件信息
#include
#include
#include
#include
#define?LENGTH?sizeof(struct?file)
#define?MaxOpenFile?5??//最大打開(kāi)文件數(shù)?
#define?MaxSaveFile?10??//?最大保存文件數(shù)?
#define?MaxUsernum?10??//?最大用戶數(shù)?
struct?file
{
int?num;??//文件編號(hào)?
????char?name[20];//文件名稱(chēng)?
????char?infom[20];//文件內(nèi)容?
????char?state;//文件打開(kāi)狀態(tài):O或C,O為open,C為close?
????int?usernum;//文件使用者編號(hào)?
????struct?file?*?next;??//后續(xù)文件?
};??
struct?file?openfiles[MaxOpenFile]={
{0“\0““\0“‘\0‘0NULL}
{0“\0““\0“‘\0‘0NULL}
{0“\0““\0“‘\0‘0NULL}
{0“\0““\0“‘\0‘0NULL}
{0“\0““\0“‘\0‘0NULL}
};
int?userLoginfilenum=0filenum1=0createnum=0;//?文件使用者編號(hào)、文件數(shù)目、?一次創(chuàng)建文件的個(gè)數(shù)、創(chuàng)建文件的次數(shù)?
struct?file?*head*move*move0*tail;
struct?file?*p1*p2;
int?main()
{
void?menu(int?x);
int?login();
for(;;)
{
int?x1=login();
if(x1==1){printf(“\n歡迎你%d!登錄成功\n“userLogin);break;}
else?printf(“用戶名不存在!登錄失敗!!請(qǐng)重新打開(kāi)程序“);
}
int?choose;
for(;;)
{
printf(“\n**********************************************\n“);
printf(“\n請(qǐng)輸入1-8:\n1=createFile\n2=deleteFile\n3=openFile\n4=closeFile\n5=readFile\n6=writeFile\n7=saveFile\n8=printFileOpen\n“);
scanf(“%d“&choose);
menu(choose);
}
return?0;
}
int?login()
{
printf(“\n**********************************************\n“);
printf(“\n請(qǐng)輸入用戶名1-10:\n“);?
scanf(“%d“&userLogin);?
printf(“\n**********************************************\n“);
if(userLogin>=1&&userLogin<=10)return?1;
else?return?0;
}
void?menu(int?x)
{
void?createFile();
void?saveFile();
void?printFileOpen();
void?deleteFile(int?x);
void?closeFile(int?x);
void?openFile(int?x);?
void?readFile(int?x);
void?writeFile(int?xchar?x1[]char?x2[]);
printf(“\n**********************************************\n“);
if(x==1)
{???
printf(“你選擇的操作是createFile\n“);
createFile();
}
else?if(x==2)
{
int?temp;
printf(“你選擇的操作是deleteFile\n“);
printf(“請(qǐng)輸入你要?jiǎng)h除的文件編號(hào):\n“);
scanf(“%d“&temp);?
deleteFile(temp);
}
else?if(x==3)
{
int?temp;
printf(“你選擇的操作是openFile\n“);
printf(“請(qǐng)輸入你要打開(kāi)的文件編號(hào):\n“);
scanf(“%d“&temp);?
openFile(temp);
}
else?if(x==4)
{
int?temp;?
printf(“你選擇的操作是closeFile\n“);
printf(“請(qǐng)輸入你要關(guān)閉的文件編號(hào):\n“);
scanf(“%d“&temp);?
closeFile(temp);
}
else?if(x==5)
{
int?temp;
printf(“你選擇的操作是readFile\n“);
printf(“請(qǐng)輸入你要讀取的文件編號(hào):\n“);
scanf(“%d“&temp);?
readFile(temp);
}
else?if(x==6)
{
int?temp;
char?temp1[20]temp2[20];
printf(“你選擇的操作是writeFile\n“);
printf(“請(qǐng)輸入你要修改的文件編號(hào):\n“);
scanf(“%d“&temp);?
printf(“請(qǐng)輸入修改后的文件名稱(chēng):\n“);
scanf(“%s“temp1);?
printf(“請(qǐng)輸入修改后的文件內(nèi)容:\n“);
scanf(“%s“temp2);?
writeFile(temptemp1temp2);
}
else?if(x==7)
{
printf(“你選擇的操作是saveFile\n“);
saveFile();
}
else?if(x==8)
{
printf(“你選擇的操作是printFileOpen\n“);
printFileOpen();
}
else
{
printf(“不存在此類(lèi)操作!請(qǐng)重新選擇!!\n“);
}
}
void?createFile()
{
filenum1=0;?
int?x=filenumx2;?
char?ch;
?屬性????????????大小?????日期????時(shí)間???名稱(chēng)
-----------?---------??----------?-----??----
?????文件????????7715??2017-11-11?17:05??操作系統(tǒng)文件系統(tǒng)實(shí)驗(yàn).c
評(píng)論
共有 條評(píng)論