简单的银行管理系统的C语言代码.docx

上传人:b****6 文档编号:7013025 上传时间:2023-01-16 格式:DOCX 页数:22 大小:19.21KB
下载 相关 举报
简单的银行管理系统的C语言代码.docx_第1页
第1页 / 共22页
简单的银行管理系统的C语言代码.docx_第2页
第2页 / 共22页
简单的银行管理系统的C语言代码.docx_第3页
第3页 / 共22页
简单的银行管理系统的C语言代码.docx_第4页
第4页 / 共22页
简单的银行管理系统的C语言代码.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

简单的银行管理系统的C语言代码.docx

《简单的银行管理系统的C语言代码.docx》由会员分享,可在线阅读,更多相关《简单的银行管理系统的C语言代码.docx(22页珍藏版)》请在冰豆网上搜索。

简单的银行管理系统的C语言代码.docx

简单的银行管理系统的C语言代码

简单的银行管理系统的C语言代码

#include

#include

#include

#include

#defineN10000

structchuhu//储户结

构信息{

帐号charidnum[9];////密码charpassword[7];

charname[11];储户姓名//

//charidnumber[19];储户身份证号码

doublecunkuan;//存款金额

intlei;//储种

//储户地址charaddress[51];

储户的联系电话//charTel[15];

利率//doublelilv;

储户结构数组}hu[N];//

voidxitong();

intrrekey();

//voidkaifa();开发人员

voidcekong();

//intyanzheng();验证帐号和密码

voiddate();显示当前日期和时间//

voidinsert();开户函数//voiddisplay();//显示查询帐户信息的函数//存款函数voidin(int);

//voidout(int);取款函数查看利率表//voidlilvbiao();

voidmenu();

intA=0,key;//A为开户数doublejin;

charch='y';控制是否继续的变量//

charid[11],password[7];

voidxitong()

{

FILE*fkey=fopen(key.txt,w+);

intk;

牰湩晴尨请创建原始密码:

);

scanf(%d,&k);

fprintf(fkey,%d\n,k);

fclose(fkey);

}

intmain()//输出主菜单

{

FILE*fkey=fopen(key.txt,

);

intt=0;

intmima;//输入的密码

system(cls);

system(colorf0);//设置系统背景为白色

date();kaifa();

printf(\

\n\n\n\n);

printf(\\t银行定期储蓄管理系统1界面\n);//printf(\

\n\n\n\n\n\n\n);

);键进入下一界面→牰湩晴尨按ENTERfflush(stdin);清空输入缓冲区//功能:

scanf(%c,&ch);

if(!

fkey)

{

\n);密码文件不存在,系统已自创牰湩晴尨xitong();

menu();

return0;

}

system(cls);

fscanf(fkey,%d,&key);

\n);牰湩晴尨请输入管理员登录密码:

scanf(%d,&mima);

if(mima==key)

t=1;

system(cls);

for(;t!

=1;)

{

\n);

管理员密码错误,请重新输入:

牰湩晴尨

scanf(%d,&mima);

if(mima==key)

t=1;

system(cls);

}//认证成功

fclose(fkey);

menu();

return0;

}

voidmenu()

{

inta,b;//选择功能的变量

do{

printf(\

\n按ENTER键进入/返回主菜单→:

);

fflush(stdin);

scanf(%c,&ch);

system(cls);//清

屏system(colorf0);

date();

printf(\

\t\t\t\t主菜单\n\n);

\n);//主菜单界面(界面3)开户printf(\\t1、

\n);

查询printf(\\t2、

\n);3、用户密码验证printf(\\t

\n);存款printf(\\t4、

\n);printf(\\t5、取款

\n);查看利率表printf(\\t6、

\n);管理员修改密码printf(\\t7、

\n);退出程序printf(\\t0、

);(0-7)牰湩晴尨请选择功能:

fflush(stdin);

scanf(%d,&a);

//switch(a)

选择功能{

case

1:

//选择功能后调用相应的函数insert();

break;

case2:

display();

break;

case3:

b=yanzheng();

break;

case4:

b=yanzheng();

in(b);

break;

case5:

b=yanzheng();

out(b);

break;

case6:

lilvbiao();

break;

case7:

rrekey();

break;

case0:

system(cls);

system(colorf0);

date();

printf(\

\n\n\t==========================================================\n);

printf(\‖‖\n);

printf(\‖‖\n);

printf(\‖‖\n);

printf(\‖‖\n);

printf(\‖谢谢使用‖\n);

printf(\‖‖\n);

printf(\‖‖\n);

printf(\‖‖\n);

printf(\‖‖\n);

printf(\‖‖\n);

printf(\==========================================================);

cekong();

牰湩晴尨您真的要退出吗(y/n)?

);

fflush(stdin);

scanf(%c,&ch);

system(cls);

break;

default:

system(cls);

printf(\

\n\t您的输入有误,请正确选择功能!

……);

break;

}

if(a==0&&(ch=='y'||ch=='Y'))

{

system(colorf0);

date();kaifa();

printf(\

\n\n\n\t欢迎下次再使

用!

);

cekong();

break;

}

}while

(1);

}

voidinsert()//开户

{

FILE*nchuhu=fopen(chuhu.txt,

);

FILE*fchuhu=fopen(chuhu.txt,a);

inti;

if((nchuhu=fopen(chuhu.txt,

))==NULL)

{

牰湩晴尨文件不存在,系统将创建.\n);

}

do{

system(cls);//清屏

system(colorf0);//设置系统背景为白色

date();

printf(\

\n\t\t请输入新储户的信息:

);

fscanf(nchuhu,%s\t%s\t%s\t%s\t%lf\t%s\t%s\t%d\t%lf\n,&hu[A].idnum,&hu[A].password,

&hu[A].name,&hu[A].idnumber,&hu[A].cunkuan,&hu[A].Tel,&hu[A].address,&hu[A].lei,&hu[A].lilv);

printf(\

\n\t\t储户存单:

);

fflush(stdin);

gets(hu[A].idnum);

printf(\

\t\t储户密码(6位):

);

for(i=0;i<6;i++)

{

fflush(stdin);

hu[A].password[i]=getch();

printf(*);

}

hu[A].password[6]='\0';

fflush(stdin);

scanf(%c,&ch);

printf(\

\t\t姓名:

);

fflush(stdin);

gets(hu[A].name);

do{

printf(\

\t\t储户身份证号码(18位):

);

fflush(stdin);

gets(hu[A].idnumber);

if(strlen(hu[A].idnumber)!

=18)

printf(\

\t\t输入错误!

\n\t\t身份证请输入18位数字或字母\n);

for(i=0;i

if(strcmp(hu[A].idnumber,hu[i].idnumber)==0&&strcmp(hu[A].name,hu[i].name)!

=0)

break;

if(i

printf(\

\n\t\t前面已有一个不同姓名的储户的身份证号为此号码,\n\t\t同一个身份证号不可以有不同的姓名,\n\n\t\t请重新输入身份证号:

\n);

}while(strlen(hu[A].idnumber)!

=18||(strcmp(hu[A].idnumber,hu[i].idnumber)==0&&strcmp(hu[A].name,hu[i].name)!

=0));

printf(\

\t\t存单金额:

);

fflush(stdin);

scanf(%lf,&hu[A].cunkuan);

);

:

储户电话printf(\

\t\t

fflush(stdin);

gets(hu[A].Tel);

printf(\

\t\t储户地址:

);

fflush(stdin);

gets(hu[A].address);

printf(\

\t\t储种:

);

printf(\

\t\t\t1、一年定期);

printf(\

\t\t\t2、两年定期);

printf(\

\t\t\t3、三年定期);

printf(\

\t\t\t4、四年定期);

printf(\

\t\t\t5、五年定期);

do{

printf(\

\t\t请选择(1-5):

);

fflush(stdin);

scanf(%d,&hu[A].lei);

if(hu[A].lei<1||hu[A].lei>5)

printf(\

\n\t\t您选择错误,请正确选择!

!

);

}while(hu[A].lei<1||hu[A].lei>5);

if(hu[A].lei==5)hu[A].lilv=0.0279;

if(hu[A].lei==4)hu[A].lilv=0.0252;

if(hu[A].lei==3)hu[A].lilv=0.0225;

if(hu[A].lei==2)hu[A].lilv=0.0198;

if(hu[A].lei==1)hu[A].lilv=0.0125;

printf(\

\t\t利率为:

%f,hu[A].lilv);

fprintf(fchuhu,%s\t%s\t%s\t%s\t%lf\t%s\t%s\t%d\t%f\n,hu[A].idnum,hu[A].password,hu[A].name,hu[A].idnumber,hu[A].cunkuan,hu[A].Tel,hu[A].address,hu[A].lei,hu[A].lilv);

A++;

printf(\

是否继续(y/n)?

);

fflush(stdin);

scanf(%c,&ch);

}while(ch=='y'||ch=='Y');

牰湩晴尨存入成功\n);

system(pause);

system(cls);

fclose(nchuhu);

fclose(fchuhu);

}

voiddisplay()//按存单号查询

{

FILE*fchuhu=fopen(chuhu.txt,

);

inti,n=0;

charfnumb[9];

system(cls);

for(i=0;i<=100;i++)

{

fscanf(fchuhu,%s\t%s\t%s\t%s\t%lf\t%s\t%s\t%d\t%lf\n,&hu[i].idnum,&hu[i].password,&hu[i].name,&hu[i].idnumber,&hu[i].cunkuan,&hu[i].Tel,&hu[i].address,&hu[i].lei,&hu[i].lilv);

}

牰湩晴尨请输入您需要查找的存单号:

);

scanf(%s,&fnumb);

printf(\\t\t存单信息:

\n);

for(i=0;i<=99;i++)

if(strcmp(fnumb,hu[i].idnum)==0)

{

牰湩晴尨存单编号:

%s\n密码:

******(已隐藏)\n用户姓名:

%s\n身份证号:

%s\n存入金额:

%f\n手机号码:

%s\n用户住址:

%s\n储种:

%d\n利率:

%f\n\n\n,hu[i].idnum,hu[i].name,hu[i].idnumber,hu[i].cunkuan,hu[i].Tel,hu[i].address,hu[i].lei,hu[i].lilv);

n=1;

break;

}

if(n==0)

牰湩晴尨此存单不存在!

!

!

\n);

printf(\

\n\t注:

储种中数字的含义为:

\n\n\t0:

活期1:

一年定期2:

两年定期3:

三年定期4:

五年定期);

fclose(fchuhu);

}

voidin(intcount)//存款

{

FILE*fchuhu=fopen(chuhu.txt,

);

FILE*achuhu=fopen(ack.txt,w);

charid[9];inti;

if(!

fchuhu)

{

牰湩晴尨不能打开文件);

}

if(!

achuhu)

{

牰湩晴尨不能创建新文件);

}

for(i=0;i<=100;i++)

{

fscanf(fchuhu,%s\t%s\t%s\t%s\t%lf\t%s\t%s\t%d\t%lf\n,&hu[i].idnum,&hu[i].password,&hu[i].name,&hu[i].idnumber,&hu[i].cunkuan,&hu[i].Tel,&hu[i].address,&hu[i].lei,&hu[i].lilv);

}

if(count<1)

{

date();

牰湩晴尨请再次输入并确认存单:

);

scanf(%s,&id);

for(i=0;i<=100;i++)

{

if(strcmp(id,hu[i].idnum)==0)

{

do{

printf(\

\n\t\t请输入存款金额:

);

fflush(stdin);

scanf(%lf,&jin);

if(jin<0)

printf(\

\n\n\t\t存款不能为负数!

!

!

);

}while(jin<0);

if(jin>=0)

{

hu[i].cunkuan+=jin;

printf(\

\n\t\t\t您存款成功!

\n\n\t\t本次存入金额为:

%.2f\n,jin);

牰湩晴尨存单上共有:

%f,hu[i].cunkuan);

}

}

fprintf(achuhu,%s\t%s\t%s\t%s\t%f\t%s\t%s\t%d\t%f\n,hu[i].idnum,hu[i].password,hu[i].

name,hu[i].idnumber,hu[i].cunkuan,hu[i].Tel,hu[i].address,hu[i].lei,hu[i].lilv);

}

}

fclose(fchuhu);

fclose(achuhu);

system(delchuhu.txt);

rename(ack.txt,chuhu.txt);

}

voidout(intcount)//取款

{

FILE*fchuhu=fopen(chuhu.txt,

);

FILE*achuhu=fopen(ack.txt,w);

inti;

charid[9];

if(!

fchuhu)

{

牰湩晴尨不能打开文件);

}

if(!

achuhu)

{

牰湩晴尨不能创建新文件);

}

for(i=0;i<=100;i++)

{

fscanf(fchuhu,%s\t%s\t%s\t%s\t%lf\t%s\t%s\t%d\t%lf\n,&hu[i].idnum,&hu[i].password,&hu[i].name,&hu[i].idnumber,&hu[i].cunkuan,&hu[i].Tel,&hu[i].address,&hu[i].lei,&hu[i].lilv);

}

if(count<1)

{

date();

牰湩晴尨请再次输入并确认存单:

);

scanf(%s,&id);

for(i=0;i<=99;i++)

{

if(strcmp(id,hu[i].idnum)==0)

{

hu[i].cunkuan+=hu[i].lilv*hu[i].lei*hu[i].cunkuan;

hu[i].cunkuan);

元%f取出牰湩晴尨

hu[i].cunkuan=0;

printf(\

\n\n\t取款成功);

}

fprintf(achuhu,%s\t%s\t%s\t%s\t%f\t%s\t%s\t%d\t%f\n,hu[i].idnum,hu[i].password,hu[i].name,hu[i].idnumber,hu[i].cunkuan,hu[i].Tel,hu[i].address,hu[i].lei,hu[i].lilv);

}

}

fclose(fchuhu);

fclose(achuhu);

system(delchuhu.txt);

rename(ack.txt,chuhu.txt);

}

voidlilvbiao()//利率表

{

system(cls);

system(colorf0);

date();

printf(\

\n\n\t\t\t利率对照表:

\n);

printf(\≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡\n);

printf(\‖‖定期‖\n);

printf(\‖储种‖ˉˉ‖ˉˉˉˉ‖ˉˉˉˉ‖ˉˉˉˉ‖ˉˉˉˉ‖\n);

printf(\‖‖一年‖二年‖三年‖四年‖五年‖\n);

printf(\‖ˉˉˉˉ‖ˉˉˉ‖ˉˉˉˉ‖ˉˉˉˉ‖ˉˉˉˉ‖ˉˉˉ‖\n);

printf(\‖利率(%%%)‖1.25‖1.98‖2.25‖2.52‖2.79‖\n);

printf(\≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡\n);

printf(\

\t说明:

定期只能在储年到期时取出\n);

}

intyanzheng()//验证存单号或密码

{

FILE*fchuhu=fopen(chuhu.txt,

);

intcount=0,i;

charid[9];

for(i=0;i<=100;i++)

{

fscanf(fchuhu,%s\t%s\t%s\t%s\t%lf\t%s\t%s\t%d\t%lf\n,&hu[i].idnum,&hu[i].password,&

hu[i].name,&hu[i].idnumber,&hu[i].cunkuan,&hu[i].Tel,&hu[i].address,&hu[i].lei,&hu[i].lilv);

}

do{

system(cls);

system(colorf0);

牰湩晴尨存单号或密码错误将自动返回\n);

printf(\

\n\t\t请输入您的存单号:

);

scanf(%s,&id);

printf(\

\n\t\t请输入您的密码:

);

for(i=0;i<6;i++)

{

fflush(stdin);

password[i]=getch();

printf(*);

}

password[6]='\0';

fflush(stdin);

scanf(%c,&ch);

printf(\

\n\t\t);

for(i=0;i<=99;i++)

{

if(strcmp(id,hu[i].idnum)==0&&strcmp(password,hu[i].pass

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 小学作文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1