[简答题]设计一个Bank类,实现银行某账号的资金往来账目管理,包括建账号、存入、取出等。解:Bank类包括私有数据成员top(当前账指针),date(日期),money(金额),rest(余额)和sum(累计余额)。有三个成员函数bankin()(处理存入账),bankout()(处理取出账)和disp()(输出明细账)请完成函数的实现。本题程序如下:

#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){…}

void bankout(char d[ ],int m){…}

void disp(){…};

} ;

正确答案:

1)
strcpy(date [top],d);
money[top]=m;
sum=sum+m;
rest[top]=sum;
top++;
2)
strcpy(date[top],d);
money[top]=-m;
sum=sum-m;
rest[top]=sum;
top++;
printf(“日期存入 取出余额\n”);
3)
int i;
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]);
}

题目解析

在C++中,类定义的一般格式如下:
class类名
{
访问范围说明符:
成员变量1
成员变量2
……
成员函数声明1
成员函数声明2
……
}

bankin()功能是处理存入账,主要是实现累加,即sum=sum+m;

bankout()功能是处理取出账,主要是实现减去金额,即sum=sum-m;

disp()功能是输出明细账,即每处理一笔进账或出账,都把明显的数值输出。

扫描二维码
免费搜题、免费刷题、免费查看解析