活期储蓄帐目管理
活期储蓄帐目管理
活期储蓄处理中,储户开户、销户、存入、支出活动频繁,系统设计要求:
1)能比较迅速地找到储户的帐户,以实现存款、取款记账;
2)能比较简单,迅速地实现插入和删除,以实现开户和销户的需要。
关于C语言基本操作的应用课设,完成以上的活期储蓄管理系统。
每个账户包含信息:帐号,用户名,余额(本系统不涉及用户的密码编程)。
采用单链表的方式存储用户信息:
代码如下:
typedef struct Account{
int accnum;
char name[10];
float balance;
struct Account *next;
}Account,*LinkedList;
第一步:初始化单链表,生成一个LinkedList的头结点:
LinkedList LinkedListInit (){
LinkedList head;
head =(LinkedList)malloc(sizeof(Account));
head->next = NULL;
return head;
}
第二步:构造第一个结点以方便之后的功能或操作。
int LinkedListCreat(LinkedList head){
LinkedList p;
p = (LinkedList)malloc(sizeof(Account));
p ->accnum=000000; //帐号为000000.
for(int i=0;i<9;i++){
p ->name[i]='A';
} //用户名为AAAAAAAAA。。
p ->balance = 0; //余额为0.
head->next = p;
p->next = NULL ;
}
第三步:遍历单链表(这一步可以不要,不影响管理系统的功能。)
void LinkedListTraverse(LinkedList head){
LinkedList p;
p = head->next;
while(p!=NULL){
printf("--------------------------------\n");
printf("||%d\t||",p->accnum);
for(int i=0;i<9;i++){
if(p->name[i+1]=='\0')break;
else
printf("%c",p->name[i]);
}
printf("\t||");
printf("%f\t||",p->balance);
printf("\n");
p = p->next;
}
}
接下来完成对各功能的描述:
开户
int LinkedListInsert(LinkedList head){
int tempnum;
char gc;
char tempname[10];
float tempbalance;
//采用随机数生成用户的帐号
do{
tempnum &#