| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 658 人关注过本帖
标题:[求助]一个自制银行小程序
只看楼主 加入收藏
shengwumozhe
Rank: 1
等 级:新手上路
帖 子:54
专家分:0
注 册:2006-10-24
收藏
 问题点数:0 回复次数:1 
[求助]一个自制银行小程序

各位大虾,您好。
我有几个疑问,希望能指点一下。

类的成员函数是否可以有查找功能?如果有,请问怎样实现?

还有,其实我想把类中的name,pass,还有一些Login调用的函数做成protected,但是=,-在访问的时候出很多毛病。比如查找功能,查找正确的用户名和正确的密码,类不分配空间,没办法确认对象,所以在类的成员函数里做查找功能怎么实现我很不理解,希望能指点下。

就这些,先谢谢各位鸟^_^


----------------------源代码-------------------------------------------------
该程序有三个文件:
// Bosn_1.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
static int count_reg=0;
int main(int argc, char* argv[])
{


//数据数组模块-MASHENGBO
Account Data[100];

//主菜单模块-ERXING
MainMenu:
fflush(stdin);
{
int x=1;
char a;
while(x)
{
cout<<"1-Login 2-Register 3-About 4-Help 5-Exit"<<endl;
cin>>a;
switch(a)
{
case'1'://login
{

//登陆模块.检密-MASHENGBO√
int user;
char in_name[20],in_pass[20];
for(;;)
{
int count_name=0;
cout<<"请输入您的用户名:"<<endl;
cin>>in_name;

for (int i=0;i<=count_reg-1;i++)
{

if (strcmp(Data[i].name,in_name)==0)
{
count_name=1;
}

}
if (count_name==1) break;
else cout<<"该用户不存在!!!\n";
}

cout<<"请输入您的密码:"<<endl;
cin>>in_pass;
int count_check=0;

for (int i=0;i<=count_reg-1;i++)
{
if (Data[i].Check(in_name,in_pass)==1)
{
user=count_reg-1; count_check=1;
}

}
if (count_check==1)
{
count_check=0;
Data[user].Account::Login();
}

else
{
cout<<"密码输入错误,请重新登陆"<<endl;
goto MainMenu;
}
break;
}
case'2'://Register
//注册模块-MASHENGBO
{
char in_pass_1[20],in_pass_2[20],in_name[20];
for(;;)
{

for(;;)
{
int count_name=0;
cout<<"请输入用户名:"<<endl;
cin>>in_name;
for (int i=0;i<=count_reg;i++)
if (strcmp(Data[i].name,in_name)==0)
{
cout<<"该用户名已被占用"<<endl;
count_name=1;
}
if (count_name==1) ;
else
{
count_name=0;
break;
}
}



cout<<"请输入密码:"<<endl;
cin>>in_pass_1;

cout<<"请确认密码:"<<endl;
cin>>in_pass_2;
if (strcmp(in_pass_1,in_pass_2)!=0)
{
cout<<"注册失败,两次密码输入不同!"<<endl;
break;
}
cout<<"注册成功!"<<endl;
count_reg++;
strcpy (Data[count_reg-1].name,in_name);
strcpy (Data[count_reg-1].pass,in_pass_1);
cout<<"1-继续注册"<<" 2-返回主菜单"<<endl;
cout<<"选择:";
int cho_a;
cin>>cho_a;
if (cho_a==1) continue;
else if (cho_a==2) goto MainMenu;
else
{
cout<<"没有这个选择.";
break;
}
break;
}
break;
}

case'3'://About
{
cout<<"本程序由BOSN工作小组制作,民院网络3-4班.^_^\n";
break;
}
case'4'://Help
{
cout<<"寻求帮助可以报答110,我们现在忙,谢谢合作!\n";
break;
}
case'5'://Exit
{

exit(1);
break;
}
}
}
}





return 0;
}

------------------------------------------------------------------------------------------------------
//StdAfx.cpp
#include "stdafx.h"
#include <iostream.h>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
//构造函数-MASHENGBO

Account::Account()
{
strcpy(name,"noname");
strcpy(pass,"void");
dollars=0;
}
//析构函数-MASHENGBO
Account::~Account()
{
;
}
//检密函数-MASHENGBO
int Account::Check(char x[20],char y[20])
{
if(strcmp(x,this->name)==0)
{
if (strcmp(y,this->pass)==0) return 1;
else return 0;
}
else return 0;
}
//登陆函数-YANGMAOSHENG
void Account::Login()
{
double m,g;

for(;;)
{
fflush(stdin);
cout<<"1--存取"<<endl;
cout<<"2--查询"<<endl;
cout<<"3--修改密码"<<endl;
cout<<"4--注销"<<endl;
cout<<"请选择:"<<endl;
char input;
cin>>input;
switch(input)
{
case'1':
{
cout<<"1--存款"<<endl;
cout<<"2--取款"<<endl;
switch(getchar())

{
case'1': cout<<"请输入您要存入的金额:";
cin>>m;
dollars+=m;
cout<<"交易成功!";
case'2': cout<<"请输入您要取出的金额:";
cin>>g;
if(dollars<g)
{
cout<<"对不起,您的余额不足。"<<endl;
g=0;
}
else
{
dollars-=g;
cout<<"请稍等,正在为您准备现金。。。\n";
cout<<"请提款,谢谢使用!"<<endl;
}
break;
}
}
case'2':
{
cout<<"余额为"<<dollars<<"$"<<endl;
break;
}

case'3':
//修改密码模块-ERXING
{
char a[20],b[20],c[20];
while(1)
{
cout<<"请输入原密码:";
cin>>a;
cout<<"请输入新密码:";
cin>>b;
cout<<"请再次输入密码:";
cin>>c;
if(strcmp(a,pass)!=0)
cout<<"原密码输入错误,请重新输入\n";
else if(strcmp(b,c)!=0)
cout<<"两次密码输入不同,请重新输入!\n";
else
{
cout<<"修改成功!\n";
strcpy(pass,b);
break;
}

}
}//case 3
case'4': goto jump;
}//switch
jump: break;
}
}
------------------------------------------------------------------------
//StdAfx.h
#include <iostream.h>
#include <string.h>

class Account
{
public:
char name[20],pass[20];//用户名和密码
double dollars;//余额
Account();//构造函数
~Account();//析构函数
int Check(char *,char *);//检密函数
void Login();//登陆函数
protected:
};


[此贴子已经被作者于2006-11-14 18:53:11编辑过]

搜索更多相关主题的帖子: 银行 
2006-11-14 15:36
shengwumozhe
Rank: 1
等 级:新手上路
帖 子:54
专家分:0
注 册:2006-10-24
收藏
得分:0 
请帮帮忙,3Q

自信,微笑^_^
2006-11-14 20:01
快速回复:[求助]一个自制银行小程序
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.051498 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved