用C语言编一个程序,建立一个简单的银行帐户管理系统

用C语言编一个程序,建立一个简单的银行帐户管理系统,第1张

#include <stdio.h>#include <string.h>struct information { char account[20]char IDcardNumchar workUintchar homeAddressfloat moneychar cardNumlong int password}void openAccount(){ cardNum++user[cardNum].cardNum = cardNumprintf("请输入您的姓名:")gets(user[cardNum].account)printf("请输入您的身份z号:")gets(user[cardNum].IDcardNum)printf("请输入您的工作单位:")gets(user[cardNum].workUnit)print("请输入您的家庭住址:")gets(user[cardNum].homeAddress)printf("请输入您的密码:")gets(user[cardNum].password)printf("请输入您要存入的金拍慎闷额:")scanf("%d",user[cardNum].money)//写入文件out.txt中,写入后,光标移至下一行 read()//读取孝派文件 write()//写入文件 cardNum++} void deposit(){ int moneyprintf("请输入您的卡号:")scanf("%d",&cardNum)printf("请输入您要存入的金额:")scanf("%f",money)user[cardNum].money = user[cardNum].money + moneyprintf("您现在账户中的余额是¥%f",user[cardNum].money)} void withdraw(){ int moneyprintf("请输入您的卡号:")scanf("%d",&cardNum)printf("请输入您要存入的金额:")scanf("%f",money)user[cardNum].money = user[cardNum].money - moneyprintf("您现在账户中的余额是¥%f",user[cardNum].money) } void changeInformation(){ printf("请输入您的卡号:")scanf("%d",&cardNum)user[cardNum].cardNum = cardNumprintf("请输入您的姓名:")gets(user[cardNum].account)printf("请输入您的身份z号:袭弯")gets(user[cardNum].IDcardNum)printf("请输入您的工作单位:")gets(user[cardNum].workUnit)print("请输入您的家庭住址:")gets(user[cardNum].homeAddress)printf("请输入您的密码:")gets(user[cardNum].password)printf("请输入您要存入的金额:")scanf("%d",user[cardNum].money)//写入文件out.txt中,写入后,光标移至下一行 read()//读取文件 write()//写入文件 } void reportLoss(){ } void closeAccount(){ } void read(){ } void write(){ } int main() { int iunsigned long int cardNum = 00001information user[cardNum]printf("请您选择要进行的 *** 作:\n")printf("------------------------------------------------------\n")printf("1、开户/办卡 2、存款 3、取款 4、修改信息 5、挂失 6、销户\n")printf("------------------------------------------------------\n")scanf("%d",&i)if(i <1 || i >6) printf("ERROR!\n")else { switch(i) { case 1 : openAccount()breakcase 2 : deposit()breakcase 3 : withdraw()breakcase 4 : changeInformation()breakcase 5 : reportLoss()breakcase 6 : closeAccount()break} } return 0} 没有写完,楼主可以参考一下!

功能:能够输入和查询客户存款取款记录。在客户文件中,每个客户是一条记录,包括编号、客户姓名、支取密码、客户地址、客户电话、账户总金额;在存取款文件中,每次存取款是一条记录,包括编号、日期、类别、存取数目、经办人。类别分为取款和存款两种。本系统能够输入客户存款或取款记录;根据客户姓名查询存款和取款记录。分步实施:1、初步完成总体设计,搭好框架,确定人机对话界面,确定函数个数;2、建立一个文件,输入客户弯察的必要信息,能对文件进行显示、输入、修订、删除等。3、进一步要求:完成客户姓名查询存款和取款记录,并能得到每次帐户总金额。要求:1、用C语言实现系统;2、利用结构体数组实现信息的数据结构设计;3、系统的各个功能模块要求用函数的形式实现;4、界面友好(良好的人机交互),程序加必要的注释。课程设计实验报告要求:1、预习报告:题目、课程设计任务、数据结构、程序的总体设计(算法)、模块划分 。2、实验总结报告:流程图、主要源程序代码(需打印)、测试情况及调试中问题与解决方案、小结等要求:标核闹肆明所用函数的用途和目改轿的,简单叙述制作思路。

按照你的愿意把空都填好了,VC++ 6.0下编译能通过,有警告信息,运行基本上能用,不过个人认为这个系统有很大的不足,比如输入账号的时候没有输出反馈信息,以及没有对误 *** 作的处理等等。需要的话可以帮你改改!

#include <stdio.h>

#include <conio.h>

#include <stdlib.h>

#include <string.h>

#define AN 9 //表示账号8位

#define PN 7 //表示密码6位

#define ASN 3 //表示系统尘饥中共有3个账户信息

struct Account

{

char accountnumber[AN]//表示账号信息

char password[PN]//表示账户的密码信息

double balance //表示账户的余额

}

struct Account ats[ASN]={{"00000001","123456",100},{"00000002","123456",200},{"00000003","123456",300}}

//ats数组用于存储系统中三个账户的信息

int isCorrect(char *an,char *psd)

{

int i

for(i=0i<ASNi++)

if(strcmp(ats[i].accountnumber,an)==0 &&strcmp(psd,ats[i].password)==0)

return 1

return 0

}

double getBalance(char *an)

{

int i

for(i=0i<ASNi++)

if(strcmp(an,ats[i].accountnumber)==0)

return ats[i].balance

}

void deposit(char *an,int amount)

{

int i

for(i=0i<ASNi++)

if(strcmp(an,ats[i].accountnumber)==0)

ats[i].balance+=amount

}

int withdraw(char *an,int amount)

{

int i

for(i=0i<ASNi++)

if(strcmp(an,ats[i].accountnumber)==0)

return ats[i].balance-=amount

}

void main()

{

char AccountNumber[AN]={'\0'}

char psd[PN]={'\0'}

int i,errorcount=0

while(1)

{

printf("\n请输入8位账号:")

for(i=0i<8i++)

AccountNumber[i]=getch()

printf("\n请输入6为密码:")

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

{

psd[i]=getch()

putchar('*')

}

if(isCorrect(AccountNumber,psd)==1)

{

int tag,amount

while(1)

{

printf("\n欢迎登录银行账户管理派蚂返系统,请选择您要的服务:1、查询余额;2、存款 *** 作;3、取款 *** 作;4、退出系统\n")

scanf("%d",&tag)

switch(tag)

{

case 1:

printf("您现在的余额为%f元\n",getBalance(AccountNumber))

break

case 2:

printf("请输入您的存款金额:")

scanf("%d",&amount)

deposit(AccountNumber,amount)

printf("存款成功!您的当前余额为:%f元\n",getBalance(AccountNumber))

break

case 3:

printf("请输入您的取款金额:")

scanf("%d",&amount)

if(amount<=getBalance(AccountNumber))

printf("取款成功!您的当前余额为:%f元物喊\n",withdraw(AccountNumber,amount))

else

printf("取款失败!\n")

break

case 4:

break

}

if(tag==4)

break

}

}

else

{

errorcount++

if(errorcount==3)

{

printf("您已经连续三次输入错误,系统将自动关闭\n")

break

}

}

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12443082.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存