关于文件的读写
当第一次使用时,设置用户名和密码,然后读入文件。然后再一次while循环的时候,应该提醒的是输入用户名和账号,可程序还是执行前一个当第一次使用时,设置用户名和密码
求大神知道
#include<iostream.h>
#include<fstream.h>
#include<string.h>
#include<iomanip.h>
int pin()
{
int t;
char pwd[11];
char num[11];
cout<<"欢迎进入通讯录管理系统"<<endl;
fstream file1,file2;
cout<<"1->用户登陆"<<endl;
cout<<"2->退出程序"<<endl;
cin>>t;
while(t!=1&&t!=2)
{
cout<<"指令错误,请重新输入"<<endl;
cin>>t;
}
while(t==1)
{
file1.open("password.text",ios::in|ios::nocreate);
if(!file1)//当文件不存在的时候
{
cout<<"您是第一次使用该系统,请输入用户名和密码"<<endl;
cout<<"用户名和密码均不超过10个字母(数字)"<<endl;
cout<<"用户名:";
cin>>pwd;
cout<<"密码:";
cin>>num;
file2.open("password.text",ios::out);
file2<<pwd;
file2<<num;
file2.close();
}
else
{
char temp1[11];
char temp2[11];
cout<<"提示:用户名和密码均不超过10个字母(数字)"<<endl;
cout<<"用户名:";
cin>>pwd;
cout<<"密码:";
cin>>num;
while(file1.peek()!=EOF)
{
file1>>temp1;
file1>>temp2;
}
file1.close();
if(strcmp(temp1,pwd)==0&&strcmp(temp2,num)==0)
return 1;
else
{
cout<<"您输入的用户名或密码有问题"<<endl;
cout<<"是否重新输入,进入该系统"<<endl;
cout<<"1.是"<<setw(10)<<"2.否"<<endl;
cin>>t;
while(t!=1&&t!=2)
{
cout<<"指令错误,请重新输入"<<endl;
cin>>t;
}
if(t==2)
return 0;
}
}
}
return 0;
}
void main()
{
cout<<pin();
}