从文件中读取信息问题
#include<iostream>
#include<cstring>
#include<fstream>
using namespace std;
void check(char id , char pwd[]);
void login();
struct Userinfo
{
int id; //用户ID
int money; //余额
char pwd[7];// 密码
}user[100];
int main()
{
ofstream file;
int i,a;
cout<<"1 就是要写信息进文件 2 就是直接登录"<<endl;
cout<<" 1 or 2 "<<endl;
cin>>a;
if(a==1)
{
for(i=0;i<=3;i++)
{
cout<<"请输入帐户:";
cin>>user[i].id;
cout<<"请输入密码:";
cin>>user[i].pwd ;
//cin.getline(user[i].pwd,sizeof(user[i].pwd));
if(!cin.good())//万一用户输入超过位,则输入流失效,故清理
{
cin.clear();
cin.ignore(1024,'\n');//清除缓冲区
}
cout<<"请输入余额:";
cin>>user[i].money;
}
file.open("test.txt");
if (file.fail())
{
cout<<"不能打开文件!!\n";
exit(1);
}
else
{
for(i=0;i<=3;i++)
file<<user[i].id<<"\t"<<user[i].pwd<<"\t"<<user[i].money<<endl;
}
file.close();
login();
}
else
login();
return 0;
}
void check(int id , char pwd[])
{
ifstream ifile;
int flag=0,i=0;
ifile.open("test.txt");
if(ifile.fail())
{
cout<<"不能打开文件,可能您并未写如数据,或者文件并不存在,请检查!";
exit(1);
}
while(!ifile.eof())
{
if (id==user[i].id)
{
flag=1;
if(!strcmp(pwd,user[i].pwd))
{
cout<<"密码正确";
login();
}
else
{
cout<<"密码不正确";
login();
}
}
i++;
}
if(flag==0)
cout<<"用户名不存在";
}
void login()
{
int user_id;
char user_pwd[20];
cout<<"\n请输入您的用名户: ";
cin>>user_id;
cout<<"请输入密码: ";
cin>>user_pwd;
check(user_id,user_pwd);
}
主要应该是在 check( ) 这个函数出了问题,但是不知道怎么改
#include<cstring>
#include<fstream>
using namespace std;
void check(char id , char pwd[]);
void login();
struct Userinfo
{
int id; //用户ID
int money; //余额
char pwd[7];// 密码
}user[100];
int main()
{
ofstream file;
int i,a;
cout<<"1 就是要写信息进文件 2 就是直接登录"<<endl;
cout<<" 1 or 2 "<<endl;
cin>>a;
if(a==1)
{
for(i=0;i<=3;i++)
{
cout<<"请输入帐户:";
cin>>user[i].id;
cout<<"请输入密码:";
cin>>user[i].pwd ;
//cin.getline(user[i].pwd,sizeof(user[i].pwd));
if(!cin.good())//万一用户输入超过位,则输入流失效,故清理
{
cin.clear();
cin.ignore(1024,'\n');//清除缓冲区
}
cout<<"请输入余额:";
cin>>user[i].money;
}
file.open("test.txt");
if (file.fail())
{
cout<<"不能打开文件!!\n";
exit(1);
}
else
{
for(i=0;i<=3;i++)
file<<user[i].id<<"\t"<<user[i].pwd<<"\t"<<user[i].money<<endl;
}
file.close();
login();
}
else
login();
return 0;
}
void check(int id , char pwd[])
{
ifstream ifile;
int flag=0,i=0;
ifile.open("test.txt");
if(ifile.fail())
{
cout<<"不能打开文件,可能您并未写如数据,或者文件并不存在,请检查!";
exit(1);
}
while(!ifile.eof())
{
if (id==user[i].id)
{
flag=1;
if(!strcmp(pwd,user[i].pwd))
{
cout<<"密码正确";
login();
}
else
{
cout<<"密码不正确";
login();
}
}
i++;
}
if(flag==0)
cout<<"用户名不存在";
}
void login()
{
int user_id;
char user_pwd[20];
cout<<"\n请输入您的用名户: ";
cin>>user_id;
cout<<"请输入密码: ";
cin>>user_pwd;
check(user_id,user_pwd);
}
主要应该是在 check( ) 这个函数出了问题,但是不知道怎么改
...全文
相关推荐
字节流实现从文件以字节读取信息
### 字节流实现从文件以字节读取信息在计算机科学中,处理文件时,经常需要将文件读取到内存中进行操作。
电芯温度采样电路几个关键点
以下浅谈如何选择合适的NTC 图1 NTC采样电路 BMS的温度采样精度包括两部分,一是电路本身的采样精度,二是NTC的精度。 在QCT-897中并没没有把NTC单独拿出来讲,但实际里面的采样精度要求是包括NTC这一部分的,而且NTC的精度对整体温度采样精度影响很大;很多主机厂只提出了一个整体的温度精度要求,但我们要知道里面的潜规则,要主动找主机厂问一下NTC是怎么选取的,因为这一块极大可能是别人选型的。 电路本身的采样精度,又包括了上拉电阻精度、ADC精度、参考电压源精度、供电电源精度,这个才是我们电路
用C++编写从文件中读取数据的程序
的信息,否则输出“文件打开失败!”的信息。2. **读取文件**: - 使用`ReadFile`函数尝试从文件中读取数据。 - 成功读取后输出读取的内容,否则输出“读取失败!”的信息。
从文件读取字符串建立哈夫曼树并进行哈夫曼编码
本文将深入探讨如何从文件读取字符串来构建哈夫曼树,并进行哈夫曼编码。首先,让我们了解哈夫曼编码的基本概念。
Java将对象保存到文件中/从文件中读取对象的方法
以下是一个从文件中读取对象的示例:```javaimport java.io.


