谁帮我详解下这个程序 我看不懂啊

来源:百度知道 编辑:UC知道 时间:2024/09/20 22:32:59
#include<stdio.h>
#include<string.h>
#define Max 100
class Bank
{
int top;
char date[Max][10]; // 日期
int money[Max]; // 金额
int rest[Max]; // 余额
static int sum; // 累计余额
public:
Bank(){top=0;}
void bankin(char d[],int m)
{
strcpy(date[top],d);
money[top]=m;
sum=sum+m;
rest[top]=sum;
top++;
}
void bankout(char d[],int m)
{
strcpy(date[top],d);
money[top]=-m;
sum=sum-m;
rest[top]=sum;
top++;
}
void disp();
};

int Bank::sum=0;
void Bank::disp()
{
int i;
printf(" 日期存入 取出余额\n");
for(i=0;i<top;i++)
{
printf("%8s",date[i]);
if(money[i]<0)
printf(" %6d",-money[i]);
else
printf("%6d ",money[i]);
printf("%6d\n",rest[i]);
}
}

void main()
{ <

#include<stdio.h>
#include<string.h>
#define Max 100
class Bank
{
int top; //类似于栈的方式,栈顶
char date[Max][10]; // 日期
int money[Max]; // 金额
int rest[Max]; // 余额 这些都是临时存放用的空间
static int sum; // 累计余额
public:
Bank(){top=0;} //初始化栈顶为0
void bankin(char d[],int m) //存入的信息
{
strcpy(date[top],d); //把参数也就是下面用到的前面的日期部分复制到当前top所指的date里
money[top]=m; //把钱存放进去
sum=sum+m; //总收入增加
rest[top]=sum; //余额就是sum
top++; //增加栈顶
}
void bankout(char d[],int m) //类似于上面的函数,只不过加变成减
{
strcpy(date[top],d);
money[top]=-m;
sum=sum-m;
rest[top]=sum;
top++;
}
void disp();
};

int Bank::sum=0; //余额初始化为0
void Bank::disp() //显示所有的交易信息
{
int i;
printf(" 日期存入 取出余额\n");
for(i=0;i<top;i++)
{
printf("%8s",date[i]);
if(money[i]<0)
printf(" %6d",-money[i]);