admin 管理员组文章数量: 1087139
2024年3月7日发(作者:power的意思中文翻译)
C语言写的简单的模拟银行存取开户等操作
#include
#include
#include
#include
#include
struct person
{
int hash;
char name[20];
char id[20];
char password[20];
int money;
}per;
int choice();
int draw(int);
int kaihu();
int land(int);
int now();
int now2();
int save(int);
int store();
int choice()
{
printf("tt***********************************************************ttn");
printf("tt***********************欢迎您使用!*************************ttn");
printf("tt******************1.储户开户(请输入1)**********************ttn");
printf("tt******************2.储户存款(请输入2)**********************ttn");
printf("tt******************3.储户取款(请输入3)**********************ttn");
printf("tt******************4.——退出(请输入0)**********************ttn");
printf("tt***********************欢迎您使用!*************************ttn");
printf("tt***********************************************************ttn");
return 0;
}
int kaihu()
{
int j,flag;
char a[9];
system("CLS");
printf("tt*******************************************************ttn");
printf("tt***********************欢迎您!*************************ttn");
printf("tt请输入您的用户名:");
scanf("%s",);
getchar();
printf("tt请输入您的身份证号码:");
scanf("%s",);
getchar();
printf("tt请输入您的存储金额:");
scanf("%d",&);
getchar();
while(<10)
{
printf("/t/t对不起!开户金额不得低于10元。请重新输入您的开户金额:nt");
scanf("%d",);
getchar();
}
srand((unsigned int)time(NULL));
=rand()%10000+1;
printf("tt恭喜您!开户成功!请牢记您的登陆账号:%dn",);
printf("您账户的初始密码为:");
for(j=1;j<7;j++)
{
rd[j-1]=j;
printf("%d",j);
}
printf("n");
printf("是否修改您的密码,修改请输入1,不修改请输入0n");
scanf("%d",&flag);
getchar();
if(flag==1)
{
former:
printf("请输入您的新密码:(不要超过9个字,但也建议不要过短)n");
scanf("%s",rd);
printf("请再次输入您的新密码:");
scanf("%s",a);
if(strcmp(rd,a)==0)
printf("恭喜修改密码成功!");
else
goto former;
}
now();/*调用这个函数,显示当前账户信息*/
store();/*调用存储函数,将用户信息存储到中*/
return 0;
}
int land(int c)
{
int n,mon,j=0;
char pass[10];
struct person per2;
FILE *fpp;
if((fpp=fopen("D:","r"))==NULL)
{
printf("taa出错啦!(您可能还没开户)n");
exit(0);
}
fscanf(fpp,"%d%s%s%d%s",&,,,&,rd);
fclose(fpp);/*关闭文件*/
loop:
if(j>=3)
exit(0);
printf("请输入您的帐号:");
scanf("%d",&n);
getchar();
printf("t密码:");
scanf("%s",pass);
getchar();
if(n== && strcmp(pass,rd)==0)
printf("恭喜您,登录成功!n");
else
{
printf("t账户不存在或密码错误,请重新输入!n");
j++;
goto loop;
}
if(c==2)
{
printf("t输入取款金额:");
scanf("%d",&mon);
draw(mon);
}
else
{
printf("t输入存款金额:");
scanf("%d",&mon);
save(mon);
}
return 0;
}
int draw(int m)/*取款函数*/
{
if(-m<10)
{
printf("t对不起,您的余额不足,不能进行取款操作,请减少取款金额。");/*对用户的取款的限制,即如果余额不超过10元将不能取款
,执行else分句,把新的余额写入*/
}
else
{
=-m;
store();
}
now();/*显示当前账户余额信息*/
return 0;
}
int save(int m)/*存款函数*/
{
=+m;
printf("t恭喜,存款成功!n");
store();
now();
return 0;
}
int now()
{
printf("nt以下是您的当前账户信息:n");
printf("t——账号——姓名———ID——-余额——密码——n");
printf("t%6d%10s%10s%6d%10sn",,,,,rd);
return 0;
}
int now2()
{
FILE *fp;
if((fp=fopen("D:","r"))==NULL)
{
printf("taa出错啦!(您可能还没开户)n");
exit(0);
}
fscanf(fp,"%d%s%s%d%s",&,,,&,rd);
fclose(fp);/*关闭文件*/
return 0;
}
int store()
{
FILE *fp;
if((fp=fopen("D:","w"))==NULL)
{
printf("ttaOpen file error!n");
exit(0);
}
fprintf(fp,"%d %s %s %d %s",,,,,rd);
fclose(fp);/*关闭文件*/
return 0;
}
int main()
{
int c;
choice();
myd:
printf("n");
scanf("%d",&c);
getchar();
if(c==1)
{
kaihu();
system("pause");/*使屏幕停留在当前状态*/
system("CLS");/*清屏,用到了头文件stdlib.h*/
choice();
goto myd;
}
else if(c==2 || c==3)
{
printf("tt请您登录:n");
now2();/*需要注意的一点是,如果存在,而里边没有数据或者数据的存储格式与
per里边的量的存储格式不一样,那么当你执行程序后直接输入2,将会登陆不上。*/
land(c);
goto myd;
}
else if(c==0)
{
system("CLS");
printf("tt**************************************************************ttn");
printf("tt*****************感谢你的使用!再见!**************************ttn");
printf("tt********我们将以百分百的诚信换你百分百的放心和满意!***********ttn");
printf("tt**************************************************************ttn");
}
else
{
printf("tt****************入!*************************ttn");
goto myd;
}
return 0;
}
指令错误请重新输!
版权声明:本文标题:C语言银行存取款源代码 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/b/1709778410a546320.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论