{
fprintf(fp,"\t%15s%10s%20s%10s\t%10.2f\t%5d\n",zhanghu[i]。
zhanghao,zhanghu[i]。
xingming,zhanghu[i].shenfenzheng,zhanghu[i].mima,zhanghu[i]。
yue,zhanghu[i]。
jiaoyishu);
for(j=0;j〈zhanghu[i]。
jiaoyishu;j++)
fprintf(fp,”%30s%10s%10。
2f%10。
2f\n",zhanghu[i].jiaoyi[j].shijian,zhanghu[i]。
jiaoyi[j].leixing,zhanghu[i].jiaoyi[j].jine,zhanghu[i]。
jiaoyi[j]。
yue);
}
fclose(fp);
}
voidduqushuju()
{
inti,j;
FILE*fp;
charfilename[20];
printf(”\n\n\n\t请输入欲读入数据的文件名:
\n");
fflush(stdin);
gets(filename);
if(strlen(filename)==0)
return;
else
if((fp=fopen(filename,"r"))==NULL)/*打开文件*/
{
printf(”无法打开此文件\n”);
system(”pause”);
return;
}
else
{
printf(”\t\t成功打开文件。
\n”);
getch();
}
fscanf(fp,"%d\n”,zhanghushu);
for(i=0;i〈zhanghushu;i++)
{
fscanf(fp,”%15s%10s%20s%10f\t%10f%5d\n”,
zhanghu[i]。
zhanghao,
zhanghu[i]。
xingming,
zhanghu[i].shenfenzheng,
zhanghu[i].mima,
&zhanghu[i]。
yue,
&zhanghu[i]。
jiaoyishu);
for(j=0;j〈zhanghu[i]。
jiaoyishu;j++)
{
fgets(zhanghu[i].jiaoyi[j].shijian,30,fp);
fscanf(fp,"%5s%10f\t%10f\n",zhanghu[i].jiaoyi[j].leixing,
&(zhanghu[i].jiaoyi[j].jine),
&(zhanghu[i]。
jiaoyi[j].yue));
}
}
fclose(fp);
}
intmenu()
{
charc;
do
{
system(”cls");
printf("\n\n\t=================欢迎使用XXX银行ATM==================\n\n");
printf(”\t=====================请选择服务=====================\n");
printf(”\t**\n");
printf(”\t*1实时存款2取款服务*\n”);
printf("\t**\n”);
printf("\t*3转账服务4查询*\n");
printf(”\t**\n”);
printf("\t*5修改密码6退出*\n”);
printf("\t**\n");
printf(”\t====================================================\n”);
printf(”\t\t\t请作出选择(1—7):
”);
c=getchar();/*读入选择*/
system(”pause");
}
while(c<’1'||c>’7');
return(c—'0');/*c变为空后返回重新选择*/
}
voidcunkuan()/*存款函数*/
{
floatcunkuanjine;/*输入的存款金额*/
intk;
inti;
chart[30];
time_trawtime;
structtm*timeinfo;
time(&rawtime);
timeinfo=localtime(&rawtime);
strcpy(t,asctime(timeinfo));
for(i=0;t[i]!
='\0’;i++)
if(t[i]=='\n’)
{
t[i]=’\0';
break;
}
printf("请输入存款金额(存款金额必须大于0,不超过10000,必须是100元的面额\n");
scanf(”%f”,&cunkuanjine);
if(cunkuanjine〈=0||cunkuanjine>1000||(int)cunkuanjine%100!
=0)
{
printf(”金额不符合要求,请重新选择”);
return;
}
else
{
k=zhanghu[j]。
jiaoyishu;
strcpy(zhanghu[j].jiaoyi[k]。
shijian,t);
strcpy(zhanghu[j].jiaoyi[k].leixing,”存”);
zhanghu[j]。
jiaoyi[k]。
jine=cunkuanjine;
zhanghu[j]。
yue+=cunkuanjine;
zhanghu[j].jiaoyi[k]。
yue=zhanghu[j]。
yue;
zhanghu[j]。
jiaoyishu++;
printf(”\n\\t\t\t您本次存了%.2f元\n”,cunkuanjine);
printf(”\n\\t\t\t您的余额为%.2f元\n”,zhanghu[j].yue);
printf("\n时间为:
%s\n”,zhanghu[j].jiaoyi[k].shijian);
printf(”\n类型为:
%s\n",zhanghu[j]。
jiaoyi[k]。
leixing);
system(”pause”);
}
}
voidqukuan()/*取款函数*/
{
intk;/*交易下标*/
floatqukuanjine;
inti;
chart[30];
time_trawtime;
structtm*timeinfo;
time(&rawtime);
timeinfo=localtime(&rawtime);
strcpy(t,asctime(timeinfo));
for(i=0;t[i]!
='\0';i++)
if(t[i]==’\n’)
{
t[i]=’\0';
break;
}
printf(”取款服务\n”);
printf(”\t=====================请选择服务=====================\n”);
printf("\t**\n");
printf("\t*11002200*\n”);
printf("\t**\n”);
printf(”\t*350041000*\n”);
printf(”\t**\n");
printf("\t*5其他金额6返回主菜单*\n");
printf("\t**\n”);
printf(”\t====================================================\n");
scanf("%f”,&qukuanjine);
if(qukuanjine<=0||qukuanjine>10000||(int)qukuanjine%100!
=0)
{
printf(”金额不符合要求,请重新选择");
return;
}
else
if(zhanghu[j]。
yue{
printf("你的账户余额不足,不能完成这项操作。
");
return;
}
{
k=zhanghu[j].jiaoyishu;
strcpy(zhanghu[j].jiaoyi[k].shijian,t);
strcpy(zhanghu[j].jiaoyi[k]。
leixing,"取");
zhanghu[j].jiaoyi[k].jine=qukuanjine;
zhanghu[j]。
yue-=qukuanjine;
zhanghu[j].jiaoyi[k]。
yue=zhanghu[j]。
yue;
zhanghu[j]。
jiaoyishu++;
printf(”\n\\t\t\t您本次取款%。
2f元\n”,qukuanjine);
printf("\n\\t\t\t您的余额为%。
2f元\n",zhanghu[j]。
yue);
printf("\n时间为:
%s\n",zhanghu[j]。
jiaoyi[k]。
shijian);
printf("\n类型为:
%s\n",zhanghu[j]。
jiaoyi[k].leixing);
system("pause");
}
}
voidzhuanzhang()
{
floatzhuanzhangjine;
inti;
intl=0;
chart[30],zhuanzhangzhanghao[12];
charsign=’n';
time_trawtime;
structtm*timeinfo;
time(&rawtime);
timeinfo=localtime(&rawtime);
strcpy(t,asctime(timeinfo));
for(i=0;t[i]!
=’\0’;i++)
if(t[i]=='\n')
{
t[i]=’\0';
}
printf("请输入你要转入的帐号:
”);
scanf("%s”,zhuanzhangzhanghao);
while(strcmp(zhanghu[l]。
zhanghao,zhuanzhangzhanghao)!
=0&&l〈zhanghushu)
l++;
if(l==zhanghushu)
{
printf(”你输入的用户不存在!
\n”);
system(”pause");
return;
}
printf(”\n该账户户主姓名为%s\n,是否确认转账Y/N?
”,zhanghu[j]。
xingming);
scanf(”\t\t%c",&sign);/*输入判断*/
if(sign!
=’y'&&sign!
=’Y')/*判断*/
return;
else
{
do
{
printf("\n请输入转账金额(大于100不超过5000):
”);
scanf("%f",&zhuanzhangjine);
if(zhuanzhangjine〈100||zhuanzhangjine〉5000)
{
printf(”输入金额不对,请重新输入!
");
system(”pause");
return;
}
if(zhanghu[j]。
yue〈=0||zhanghu[j]。
yue{
printf(”账户余额不足\n”);
system(”pause");
return;
}
else
{
k=zhanghu[j]。
jiaoyishu;
strcpy(zhanghu[j].jiaoyi[k].shijian,t);
strcpy(zhanghu[j].jiaoyi[k]。
leixing,”转账");
zhanghu[j]。
jiaoyi[k].jine=zhuanzhangjine;
zhanghu[j]。
yue-=zhuanzhangjine;
zhanghu[j].jiaoyi[k]。
yue=zhanghu[j].yue;
zhanghu[j]。
jiaoyishu++;
printf("\n\t\t你本次转了%0.2f元\n”,zhuanzhangjine);
printf(”\n\t\t你的余额为%0.2f元\n",zhanghu[j].yue);
printf("\n\t\t时间为:
%s\n",zhanghu[j].jiaoyi[k].shijian);
printf(”\n\t\t类型为:
%s\n",zhanghu[j]。
jiaoyi[k]。
leixing);
system("pause");
}
}while(0);
}
printf(”\n\n\t\t转账成功\n\n”);
system("pause”);
}
voidxiugaimima()/*修改密码函数*/
{
charmima1[7],mima2[7];
do
{
do
{
printf(”\n\n\n\t\t请输入密码:
”);
scanf(”%s",mima1);
if(strlen(mima1)==6)
break;
else
printf("\n\n\t\t密码必须是6位,请重新输入!
”);
}while
(1);
do
{
printf(”\n\n\n\t\t请确认密码:
");
scanf(”%s”,mima2);
if(strlen(mima2)==6)
break;
else
printf(”输入密码必须是6位请输入密码:
");
}while
(1);
if(strcmp(mima1,mima2)==0)/*判断第二次输入的密码是否与第一次的一致*/
break;
else
printf(”\n\n\t\t*|两次密码不相等请重新输入:
\n\n”);
}while
(1);
strcpy(zhanghu[j].mima,mima1);
printf(”\n\n\t\t修改密码成功\n\n”);
getch();
system("pause”);
}
intchaxuncaidan();/*查询菜单*/
voidchaxunyue();
voidchaxuncunkun();
voidchaxunqukun();
voidchaxunzhuangzhan();
voidchaxunjiaoyi();
voidduqushuju();
voidchaxun()/*查询函数*/
{
for(;;)
{
switch(chaxuncaidan())/*选择判断*/
{
case1:
chaxunyue();
break;
case2:
chaxuncunk