모든 입력에는 오류가 없다고 가정하기에
에러처리는 하지 않는다.
[code]
/*
p.50~
은행계좌 관리 프로그램
기능1 계좌개설
기능2 입금
기능3 출금
기능4 전체고객 잔액조회
*/
#include <iostream>
#include <cstring>
using namespace std;
typedef struct account {
char accountNum[20];
char name[10];
int balance;
}account;
account bank[100];//계좌 목록
int bankCount=0;//계좌 수 카운트
void createAccount() {
cout << "계좌번호: ";
cin >> bank[bankCount].accountNum;
cout << "이름: ";
cin >> bank[bankCount].name;
cout << "입금액: ";
cin >> bank[bankCount++].balance;
cout << "계좌 개설 완료!" << endl;
cout << "개설 계좌 정보" << endl;
cout << "계좌번호: " << bank[bankCount - 1].accountNum << endl;
cout << "이름: " << bank[bankCount - 1].name << endl;
cout << "잔액: " << bank[bankCount - 1].balance<< endl;
}
void deposit() {
int num = 0;
char accountNum[100];
cout << "입금 계좌번호: ";
cin >> accountNum;
cout << "입금 금액: ";
cin >> num;
for (int i = 0; i < bankCount; i++) {
if (strcpy(accountNum, bank[i].accountNum))
{
bank[i].balance += num;
cout << "입금 완료"<<endl;
cout << "잔액: " << bank[i].balance << endl;
break;
}
}
}
void withdrawal() {
int num = 0;
char accountNum[100];
cout << "출금 계좌번호: ";
cin >> accountNum;
cout << "출금 금액: ";
cin >> num;
for (int i = 0; i < bankCount; i++) {
if (strcpy(accountNum, bank[i].accountNum))
{
bank[i].balance -= num;
cout << "출금 완료" << endl;
cout << "잔액: " << bank[i].balance << endl;
break;
}
}
}
void accountPrint() {
for (int i = 0; i < bankCount; i++) {
cout << "계좌번호: " << bank[i].accountNum << endl;
cout << "이름: " << bank[i].name << endl;
cout << "잔액: " << bank[i].balance << endl;
}
}
int main(void) {
int num = 0;
while (true) {
cout << "-----Menu-----" << endl;
cout << "1. 계좌개설" << endl;
cout << "2. 입 금" << endl;
cout << "3. 출 금" << endl;
cout << "4. 계좌정보 전체 출력" << endl;
cout << "5. 프로그램 종료" << endl;
cout << "선택: ";
cin >> num;
switch (num) {
case 1:
createAccount();
break;
case 2:
deposit();
break;
case 3:
withdrawal();
break;
case 4:
accountPrint();
break;
case 5:
return 0;
break;
default:
cout << "잘못된 입력입니다" << endl;
break;
}
}
return 0;
}
[/code]
'코딩,문제풀이 > cpp' 카테고리의 다른 글
namespace 별칭 (0) | 2017.01.01 |
---|---|
열혈강의 c++ p.32 (0) | 2017.01.01 |
매개변수 디폴트값 (0) | 2017.01.01 |
열혈강의 c++ p.26 (0) | 2017.01.01 |
함수 오버로딩(Function Overloading) (0) | 2017.01.01 |