c语言银行管理系统.docx
《c语言银行管理系统.docx》由会员分享,可在线阅读,更多相关《c语言银行管理系统.docx(32页珍藏版)》请在冰豆网上搜索。
c语言银行管理系统
C语言学籍管理系统
课
程
设
计
报
告
院系:
机械与电子工程系
专业:
电子信息工程
班级:
1730413
学号:
20173041326
*************************
指导老师:
***
2017年1月7号
/*#熊昊仁#*/
#include
#include
#include
#include
FILE*fp;
intn=0;
voidbiaoti();/*标题*/
voidduquwenjian();/*读取文件*/
voidyezhuxieru();/*业主写入*/
voidzengjiayezhu();/*增加业主*/
voidchazhao();/*查找*/
voidxianshi();/*显示所有业主函数*/
voidchazhao_xingming();/*按姓名查询*/
voidchazhao_zhanghao();/*按账号查找*/
voidshanchu();/*删除业主信息*/
voidshanchu_quanbu();/*删除所有业主*/
voidshanchu_dange();/*删除单个业主*/
voidshanchu_xingming();/*按姓名删除业主*/
voidshanchu_zhanghao();/*按账号删除业主*/
voidxiugai();/*修改函数*/
voidxiugai_xingming();/*按姓名修改*/
voidxiugai_zhanghao();/*按账号修改*/
voidzhucaidan();/*主菜单*/
voidmima();/*密码*/
voidcunqukuan();/*存取款*/
voidcunqu_xingming();/*按姓名存取*/
voidcunqu_zhanghao();/*按账号存取*/
voidmain()/*主函数main*/
{
biaoti();/*标题*/
duquwenjian();
mima();/*读入文件*/
}
voidzhucaidan()/*主菜单*/
{
charc;
system("cls");
printf("\n\t|-----欢迎使用东华理工长江学院银行业务管理系统-----|");
printf("\n\t|-----①添加业主②查询和显示业主-----|");
printf("\n\t|-----③删除业主④修改业主信息-----|");
printf("\n\t|-----⑤存取款-----|");
printf("\n\t|-----⑥保存退出⑦不保存退出-----|");
printf("\n\t|--------------------------------------------------|");
printf("\n\t|-----------(注意每次退出前进行保存!
)-----------|");
printf("\n\t|--------------------------------------------------|");
printf("\n\t请选择您所所要的服务:
");
c=getchar();
switch(c)/*对于上边的选择项目*/
{
case'1':
zengjiayezhu();break;
case'2':
chazhao();break;
case'3':
shanchu();break;
case'4':
xiugai();break;
case'5':
cunqukuan();break;
case'6':
yezhuxieru();break;
case'7':
exit(0);
default:
zhucaidan();/*如果没有则返回主菜单等待输入*/
}
}
structyinhang
{
charxingming[12];/*姓名*/
charxingbie[4];/*性别*/
intnianling;/*年龄*/
charzhanghao[6];/*账号*/
charyue[10];/*余额*/
}yezhu[100];
voidbiaoti()/*标题*/
{
printf("\n\t|---------------银行业务信息管理系统---------------|");
printf("\n\t|------------电子信息工程三班熊昊仁制作------------|");
putchar(10);
putchar(10);
}
voidduquwenjian()/*读取文件*/
{
if((fp=fopen("c:
\\信息.txt","rt+"))==NULL)/*以只读方式打开判定文件是否为空*/
{
printf("\n\t\t\t文件不存在!
");/*判断结论*/
printf("\n\t------------请在C盘中创建名为信息的文本文件--------------");
if((fp=fopen("信息.txt","w"))==NULL)/*只写方式判断*/
{
printf("\n\t建立失败");/*为空结论*/
exit(0);/*退出*/
}
else/*不为空则继续执行*/
{
printf("\n\t-------------------欢迎使用业务管理系统------------------");
printf("\n\t信息文件已建立");
printf("\n\t按回车键进入主菜单");
printf("\n\t---------------------------------------------------------");
getchar();
return;
}
exit(0);
}/*出场白*/
fseek(fp,0,2);/*文件位置指针移动到文件末尾*/
if(ftell(fp)>0)/*文件不为空*/
{
rewind(fp);/*文件位置指针移动到文件开始位置*/
for(n=0;!
feof(fp)&&fread(&yezhu[n],sizeof(structyinhang),1,fp);n++)
;
printf("\n\t|-----欢迎使用东华理工长江学院银行业务管理系统-----|");
printf("\n\t|文件导入成功|");
printf("\n\t|按任意键返回主菜单|");
printf("\n\t|--------------------------------------------------|");
getchar();
return;
}
printf("\n\t|-----欢迎使用东华理工长江学院银行业务管理系统-----|");
printf("\n\t|文件导入成功|");
printf("\n\t|通讯录文件中无任何纪录|");
printf("\n\t|按任意键返回主菜单|");
printf("\n\t|--------------------------------------------------|");
getchar();
return;
}
voidyezhuxieru()/*业主写入文件*/
{
inti;
if((fp=fopen("c:
\\信息.txt","w"))==NULL)/*以只写的方式判断文件能否打开*/
{
printf("\n\t\t文件打开失败");
}
for(i=0;i{
if(fwrite(&yezhu[i],sizeof(structyinhang),1,fp)!
=1)
{
printf("\n\t\t写入文件错误!
\n");
}
}
fclose(fp);/*关闭文件*/
printf("\n\t------------------------------------------------------");/*输出提示信息*/
printf("\n\t信息文件已保存");
printf("\n\t按任意键退出程序\n\t\t");/*输出完毕*/
exit(0);
printf("\n\t------------------------------------------------------");
}
voidzengjiayezhu()/*增加业主*/
{
printf("\n\t|-----------------请输入业主信息-----------------|\n");
printf("\n\t输入业主姓名:
");
scanf("%s",yezhu[n].xingming);/*键盘输入*/
printf("\n\t输入业主性别:
");
scanf("%s",yezhu[n].xingbie);
printf("\n\t输入业主年龄:
");
scanf("%d",&yezhu[n].nianling);
printf("\n\t输入业主账号:
");
scanf("%s",yezhu[n].zhanghao);
printf("\n\t输入业主余额:
");
scanf("%s",yezhu[n].yue);
n++;/*统计个数*/
printf("\n\t是否继续添加联系人?
(Y/N):
");/*是否继续输入联系人.*/
getchar();
if(getchar()=='y')
zengjiayezhu();
return;
}
voidchazhao()/*查找*/
{
charc;
//system("cls");
printf("\n\t|------------------显示和查询业主-------------------|");
printf("\n\t|①逐个显示所有②按姓名查询|");
printf("\n\t|③按账号查询④返回主菜单|");
printf("\n\t|-----------------------------------------------------|");
printf("\n\t请选择您所所要的服务:
");
getchar();
c=getchar();
switch(c)
{
case'1':
xianshi();break;/*显示所有信息*/
case'2':
chazhao_xingming();break;/*调用按姓名查询函数*/
case'3':
chazhao_zhanghao();break;/*调用按账号查询函数*/
case'4':
zhucaidan();break;/*主菜单*/
}
}
voidxianshi()/*显示所有业主函数*/
{
inti;
intmark=0;
//system("cls");//清楚屏幕
if(n!
=0)
{
printf("\n\t\t----------欢迎您查询信息里所有业主信息-------------");
for(i=0;i{
printf("\n\t姓名:
%s",yezhu[i].xingming);
printf("\n\t性别:
%s",yezhu[i].xingbie);
printf("\n\t年龄:
%d",yezhu[i].nianling);
printf("\n\t账号:
%s",yezhu[i].zhanghao);
printf("\n\t余额:
%s",yezhu[i].yue);
printf("\n\t--------------------------------------------------");
if(i+1{
printf("\n\t\t-----------------------");
system("pause");//返回错误信息
}
}
printf("\n\t\t---------------------------------------------");
mark=1;
}
else
printf("\n\t\t信息中无任何纪录");
printf("\n\t\t按任意键返回主菜单");
getchar();
getchar();
return;
}
voidchazhao_xingming()/*按姓名查询*/
{
intmark=0;
inti;
charname[20];
printf("\n\t|---------------按姓名查找-------------------|");
printf("\n\t\t请输入您要查找的姓名:
");
scanf("%s",name);
for(i=0;i{
if(strcmp(yezhu[i].xingming,name)==0)
{
printf("\n\t|-----------以下是您查找的业主信息--------------|");
printf("\n\t姓名:
%s",yezhu[i].xingming);
printf("\n\t性别:
%s",yezhu[i].xingbie);
printf("\n\t年龄:
%d",yezhu[i].nianling);
printf("\n\t账号:
%s",yezhu[i].zhanghao);
printf("\n\t余额:
%s",yezhu[i].yue);
printf("\n\t|-------------------------------------------------|");
mark++;
getchar();
getchar();
return;
}
}
if(mark==0)
{
printf("\n\t\t没有找到联系人的信息");
printf("\n\t\t按任意键返回主菜单");
getchar();
getchar();
return;
}
}
voidchazhao_zhanghao()/*按账号查找*/
{
intmark=0;
inti;
charzhanghao[15];
printf("\n\t|------------------按账号查找-----------------------|");
printf("\n\t请输入银行账号:
");
scanf("%s",zhanghao);
for(i=0;i{
if(strcmp(yezhu[i].zhanghao,zhanghao)==0)//对比查找函数
{
printf("\n\t|-----------以下是您查找的业主信息----------|");
printf("\n\t姓名:
%s",yezhu[i].xingming);
printf("\n\t性别:
%s",yezhu[i].xingbie);
printf("\n\t年龄:
%d",yezhu[i].nianling);
printf("\n\t账号:
%s",yezhu[i].zhanghao);
printf("\n\t余额:
%s",yezhu[i].yue);
printf("\n\t|---------------------------------------------|");
printf("\n\t按任意键返回主菜单:
");
mark++;
getchar();
getchar();
return;
}
}
if(mark==0)
{
printf("\n\t\t没有找到业主的信息");
printf("\n\t\t按任意键返回主菜单");
getchar();
getchar();
return;
}
}
voidshanchu()/*删除业主信息*/
{
charc;
if(n==0)/*如果信息中没有一个记录输出以下部分*/
{
printf("\n\t文件中无任何纪录");
printf("\n\t按任意键返回主菜单");
getchar();
getchar();
return;
}
//system("cls");/*清屏*/
printf("\n\t|----------------删除菜单---------------------|");
printf("\n\t|①删除所有②删除单个|");
printf("\n\t|③返回主菜单|");
printf("\n\t|------------------------------------------------|");
printf("\n\t请选择您所所要的服务:
");
getchar();
c=getchar();/*输入的赋予c*/
switch(c)
{
case'1':
shanchu_quanbu();break;
case'2':
shanchu_dange();break;
case'3':
zhucaidan();break;
default:
zhucaidan();break;
}
}
voidshanchu_quanbu()/*删除所有业主*/
{
printf("\n\t确认删除?
(y/n)");
getchar();
if(getchar()=='y')
{
fclose(fp);
if((fp=fopen("信息.txt","w"))==NULL)/*文件空输出*/
{
printf("\n\t\t不能打开文件,删除失败");
duquwenjian();
}
n=0;
printf("\n\t\t纪录已删除,按任意键返回主菜单");
getchar();
getchar();
return;
}
else
return;
}
voidshanchu_dange()/*删除单个业主*/
{
charc;
printf("\n\t|--------------------------------------------------------|");
printf("\n\t\t①按姓名删除②按账号删除");
printf("\n\t|--------------------------------------------------------|");
printf("\n\t请选择您所所要的服务:
");
getchar();
c=getchar();
switch(c)
{
case'1':
shanchu_xingming();break;
case'2':
shanchu_zhanghao();break;
}
}
voidshanchu_xingming()/*按姓名删除业主*/
{
inti,m,mark=0,a=0;
charname[20];
printf("\n\t请输入要删除业主姓名:
");
scanf("%s",name);/*键盘输入姓名*/
for(i=a;i{
if(strcmp(yezhu[i].xingming,name)==0)//对比字符串查找到要删除的联系人
{
printf("\n\t以下是您要删除的联系人纪录:
");
printf("\n\t|------------------------------|");
printf("\n\t|-----------以下是您查找的业主信息-----------|");
printf("\n\t姓名:
%s",yezhu[i].xingming);
printf("\n\t性别:
%s",yezhu[i].xingbie);
printf("\n\t年龄:
%d",yezhu[i].nianling);
printf("\n\t账号:
%s",yezhu[i].zhanghao);
printf("\n\t余额:
%s",yezhu[i].yue);
printf("\n\t|------------------------------|");
printf("\n\t是否删除?
(y/n)");
getchar();
if(getchar()=='y')//实现删除功能
{
for(m=i;myezhu[m]=yezhu[m+1];/*将信息的向前移*/
n--;
mark++;
printf("\n\t删除成功");
printf("\n\t是否继续删除?
(y/n)");
getchar();
if(getchar()=='y')
shanchu_xingming();/*继续调用删除函数*/
return;
}
else
return;
}
continue;
}
if(mark==0)
{
printf("\n\t没有该联系人的纪录");
printf("\n\t是否继续删除?
(y/n)");
getchar();
if(getchar()=='y')