洛阳理工学院操作系统实验报告Word文件下载.docx
《洛阳理工学院操作系统实验报告Word文件下载.docx》由会员分享,可在线阅读,更多相关《洛阳理工学院操作系统实验报告Word文件下载.docx(9页珍藏版)》请在冰豆网上搜索。
string.h>
typedefstructuser
{
charUName[8];
//用户名
charPassword[10];
//密码
}Access;
typedefstructFilenode{
charFName[10];
structFilenode*next;
}File;
typedefstructMFDnode{
structMFDnode*right;
File*down;
}DFlink;
Accesspower[10];
DFlink*head;
voidinitPower(){
inti;
printf("
请输入用户信息:
\n"
);
for(i=0;
i<
5;
i++){
请输入用户名:
"
gets_s(power[i].UName);
请输入密码:
gets_s(power[i].Password);
}
}
voidinitHead(){
DFlink*m,*n;
m=(DFlink*)malloc(sizeof(DFlink));
m->
right=NULL;
down=NULL;
head=m;
i++)
{
n=(DFlink*)malloc(sizeof(DFlink));
strcpy_s(n->
UName,power[i].UName);
m->
right=n;
n->
m=n;
intlogging(){
charname[8],password[10];
inti=0;
intj=0;
请输入登录的用户名:
gets_s(name);
while(i<
2&
&
strcmp(power[i].UName,name)!
=0)
i++;
if(i<
5)
printf("
gets_s(password);
while(strcmp(power[i].Password,password)!
=0&
j<
3)
printf("
密码不正确,请重新输入:
gets_s(password);
j++;
if(j==3)
密码输入错误超过三次,禁止输入\n"
return-1;
else{
returni;
}
else
voidfileCreate(intindex){
charname1[8];
DFlink*n;
File*s,*p;
intj;
strcpy_s(name1,power[index].UName);
n=head->
right;
while(n!
=NULL&
strcmp(n->
UName,name1)!
n=n->
if(n!
=NULL){
s=(File*)malloc(sizeof(File));
down=s;
s->
next=NULL;
for(j=0;
3;
j++){
p=(File*)malloc(sizeof(File));
请输入所包含的文件:
gets_s(p->
FName);
s->
next=p;
p->
s=p;
else
没有该用户名!
voidfileDelete(intindex){
charname2[8];
请输入要删除的文件名:
gets_s(name2);
s=n->
down;
p=s->
next;
while(p!
strcmp(p->
FName,name2)!
=0){
s=s->
next;
p=p->
}
if(p!
=NULL)
next=p->
else
没有该文件名!
voidprint(intindex)
{
charname[8];
File*s,*p;
strcpy_s(name,power[index].UName);
UName,name)!
n=n->
right;
s=n->
p=s->
包含的文件为:
while(p!
{
printf("
%s"
p->
p=p->
voidmain(){
intf=1;
chara;
while(f){
i用户初始化\n"
c创建文件\n"
d删除文件\n"
e退出\n"
请选择:
scanf_s("
%c"
&
a);
getchar();
switch(a){
case'
i'
:
initPower();
initHead();
break;
c'
j=logging();
fileCreate(j);
print(j);
d'
fileDelete(j);
e'
f=0;
四、原始数据记录
输入数据:
用户名密码文件名
aaa111a1a2a3
bbb222b1b2b3
ccc333c1c2c3
ddd444d1d2d3
fff555f1f2f3
五、结论
预期的输出:
用户初始化:
创建文件:
(为了简洁,只截两个用户名的文件的创建)
删除文件:
(为了简洁,只截一个用户名的文件)
实际输出数据与预期的输出相同(不相同)
实际输出数据与预期的输出相同。
第页