部落格班級
軟體工程
作業要求
作業要求
作業目標
根據atm機的功能設計**,並完成atm系統**的建立
學號3180701219
編寫乙個atm管理系統,語言不限,要求應包括以下主要功能:
(1)開戶,銷戶
(2)查詢賬戶餘額
(3)存款
(4)取款
(5)轉賬(乙個賬戶轉到另乙個賬戶)等...
標頭檔案
#include #include #include #include using namespace std;
結構體typedef struct accountnode;
typedef struct nodenode;
函式宣告void menu(); //主選單
void createaccount(node* &head); //開戶
void login(node* head); //登入
bool cancel(node* &head); //銷戶
void loginmenu(); //登入選單
node* find(node* head, string accountnumber); //根據賬號找客戶
主選單void menu()//主選單
開戶void createaccount(node* &head)
//隨機生成銀行賬號
char temp[20];//0000 0000 0000 0000 0 0
string accountnumber;
srand((unsigned int)time(null));
sprintf(temp, "%d%d%d%d%d%d", rand() % 9000 + 1000,
rand() % 9000 + 1000, rand() % 9000 + 1000, rand() % 9000 + 1000, rand() % 10, rand() % 10);//sprintf格式化字串
accountnumber = temp;
node* pnode = new node;
pnode->acc.name = name;
pnode->acc.password = password;
pnode->acc.accountnumber = accountnumber;
pnode->acc.money = 0;
pnode->next = null;
node* p = head;
while (p != null && p->next != null)
p = p->next;
if (head == null)
head = pnode;
else
p->next = pnode;
printf("\n\n\t\t\t\t\t恭喜您,開戶成功!\n");
cout << "\n\t\t\t\t\t您的賬號為:" << accountnumber << endl;
}
登入選單void loginmenu()
登入及(訪問款、查詢餘額、轉賬、修改密碼)void login(node* head)
printf("\n\t\t\t\t\t請輸入您的密碼:");
cin >> password;
while (p->acc.password != password)
while (1)
break;
case 3:
printf("\n\n\t\t\t\t\t請輸入您的轉賬的賬號:");
cin >> otheraccountnumber;
printf("\n\t\t\t\t\t請輸入您的轉賬金額:");
cin >> money;
temp = find(head, otheraccountnumber);
if (!temp)
p->acc.money -= money;
temp->acc.money += money;
printf("\n\t\t\t\t\t\t轉賬成功!\n");
break;
case 4:
printf("\n\n\t\t\t\t\t您的餘額為:%.2f\n", p->acc.money);
break;
case 5:
printf("\n\n\t\t\t\t\t請輸入您的新密碼:");
cin >> newpassword;
p->acc.password = newpassword;
printf("\n\t\t\t\t\t\t密碼修改成功!\n");
break;
case 6:
return;
default:
printf("\t\t\t\t\t\t\t輸入有誤!\n");
} system("pause");
}}
查詢函式node* find(node* head, string accountnumber)
return p;
}
銷戶bool cancel(node* &head)
q = p;
p = p->next;
while (p != null)
q = p;
} return false;
}
主函式int main()
system("pause");
} return 0;
}
主選單
建立賬戶
存款介面
轉賬介面
登出賬戶
任務內容
計畫完成需要的時間(min)
實際完成需要的時間(min)
planning
計畫20
15estimate
估計這個任務需要多少時間,並規劃大致工作步驟
200240
development
開發10
30analysis
需求分析(包括學習新技術)
1010
design spec
生成設計文件
1020
design review
設計複審
1020
coding standard
**規範
1010
design
具體設計
2030
coding
具體編碼
3020
code review
**複審
2030
test
測試(自我測試,修改**,提交修改)
2030
reporting
報告10
20test report
測試報告
1015
size measurement
計算工作量
2020
postmortem & process improvement plan
事後總結,並提出過程改進計畫510
個人總結
本次對atm管理系統的編寫主要使用c++來進行編寫,複習了一些c++的基本語法,其中在建立新節點的時候,由於使用了string容器,導致malloc不能使用,不過一開始並沒有發現這個問題,導致我走了很多的彎路,好在後期及時發現,使用new來建立新的節點,才解決了問題。
軟體工程管理 第三次作業
1.結對程式設計 一種開發的方式,兩個人共同使用同一臺電腦,共同研究開發同乙個任務。任務可以是多樣的,寫需求,搭建框架,開發 測試等。體會到的好處 1 有利於經驗和知識的分享。2 促進溝通,增強合作意識,提高表達能力。3 能夠快速應對團隊中人員流失問題。在結對中,發現自己表述能力還是有問題的,有些問...
軟體工程第三次作業
影印機的工作過程大致如下 未接到影印命令時處於 閒置 狀態,一旦接到 影印命令 則進入 影印 狀態,完成乙個影印命令 規定的工作後又回到閒置狀態,等待下乙個影印命令 如果執行影印命令時 發現沒紙 則進入 缺紙 狀態,發出警告,等待裝紙,裝滿紙 後進入閒置狀態,準備接收影印命令 如果影印時發生 卡紙故...
軟體工程第三次作業
最大連續子陣列和 最大子段和 問題 給定n個整數 可能為負數 組成的序列a 1 a 2 a 3 a n 求該序列如a i a i 1 a j 的子段和的最大值。當所給的整數均為負數時定義子段和為0,依此定義,所求的最優值為 max,1 i j n 例如,當 a 1 a 2 a 3 a 4 a 5 a...