C++程式設計

2008-03-08 8:42 am
請設計一個文字介面的自動提款機 。當執行程式時:


1. 程式會先顯示歡迎訊息


2. 接著要求使用者輸入帳號


3. 再要求使用者入密碼


4. 如果三次嘗試都錯誤的話就中止程式 否則就是登入成功






登入後, 你的”主畫面”會顯示出四種功能選項:


1. 檢視帳戶餘額: 顯示該帳戶的餘額 , 然後再回到主畫面.


2. 提款 : 當使用者選擇提款時,畫面應該進入提款畫面,你應該提供六個選項讓使用者選擇: 1. 100, 2. 500, 3. 1000, 4. 2000, 5. 3000, 6. 取消交易 . 選擇1-5的選項後,你應該顯示出使用者領用了多少錢,存款剩多少,然後回到”主畫面”. 記住: 你要確認使用者的存款是否有足夠的錢可以提領! 如果使用者選擇取消交易,則系統會回到”主畫面”.


3. 存款 :當使用者選擇存款時,畫面應該進入存款畫面,你應該提供六個選項讓使用者選擇: 1. 100, 2. 500, 3. 1000, 4. 2000, 5. 3000, 6. 取消交易 . 選擇1-5的選項後,你應該顯示出使用者存入了多少錢,存款變成多少,然後回到”主畫面”.


4. 結束 (exit): 程式結束






注意! 自動提款機只有五組帳號, 請直接寫在你的程式中:


l 帳號: 12345 密碼: 12345 balance: $3000


l 帳號: 23456 密碼: 23451 balance: $200


l 帳號: 34567 密碼: 34512 balance: $1500


l 帳號: 45678 密碼: 45123 balance: $2000


l 帳號: 67890 密碼: 51234 balance: $10
更新1:

這樣寫過。。。。 #include #include #include // 用strcmp所需標頭檔 void main(int argc, char *argv[]) { char a[20]; int index = 0; // 共三次機會 while(index<3) { // 三次機會未用完即可以進入迴圈

更新2:

printf("Input UserName = "); gets(a); if(strcmp(a,"llc") == 0) { printf("Input Password = ");

更新3:

gets(a); if(strcmp(a,"123") == 0) { printf("welcome\n"); break; // 跳出迴圈 }else index++; printf("Password Erro !\n"); continue; // 重新輸入帳號 }else

更新4:

index++; printf("ID Error\n"); } // while system("PAUSE"); } // main 要怎樣改?

回答 (1)

2008-03-09 4:18 pm
✔ 最佳答案
#include
#include
#include

using namespace std;

int main(int argc, char *argv[])
{
char ids[5][9]={&quot;12345&quot;,&quot;23456&quot;,&quot;34567&quot;,&quot;45678&quot;,&quot;67890&quot;};
char passwords[5][9]={&quot;12345&quot;,&quot;23451&quot;,&quot;34512&quot;,&quot;45123&quot;,&quot;51234&quot;};
int balance[5]={3000,200,1500,2000,10};
int amount[5]={100,500,1000,2000,3000};
char id_input[6], password_input[6];
int login = 0;
int i, j, instruction;

cout&lt;&lt;&quot;Thank you for using this ATM&#92;n&#92;n&quot;;

while(login&lt;3)
{
cout&lt;&lt;&quot;Please input your ID: &quot;;
cin&gt;&gt;id_input;
cout&lt;&lt;&quot;Please input your password: &quot;;
cin&gt;&gt;password_input;
for(i=0;i&lt;5;i++)
{
if(strcmp(id_input,ids[i])==0&&strcmp(password_input,passwords[i])==0)
{
cout&lt;&lt;&quot;&#92;n&quot;;
while(1)
{
cout&lt;&lt;&quot;1. Check Balance&#92;n&quot;
&lt;&lt;&quot;2. Withdraw Cash&#92;n&quot;
&lt;&lt;&quot;3. Deposit Cash&#92;n&quot;
&lt;&lt;&quot;4. Exit&#92;n&quot;
&lt;&lt;&quot;Please input a number (1-4): &quot;;
cin&gt;&gt;instruction;
cout&lt;&lt;&quot;&#92;n&quot;;
if(instruction==1)
{
cout&lt;&lt;&quot;Account Balance: $&quot;&lt;&lt;&lt;&quot;&#92;n&#92;n&quot;;
}
else if(instruction==2)
{
for(j=0;j&lt;5;j++)
{
cout&lt;&lt;&lt;&quot;. &quot;&lt;&lt;&lt;&quot;&#92;n&quot;;
}

cout&lt;&lt;&quot;6. Cancel Transaction&#92;n&quot;
&lt;&lt;&quot;Please input a number (1-6): &quot;;
cin&gt;&gt;instruction;

if(instruction==6)
{

2008-03-09 08:27:38 補充:
The code is too long...... goto the following link to see the code la.....

http://www.srcf.ucam.org/~cjc93/yahoo/cpp.txt

2008-03-09 08:30:37 補充:
You can use the following line to clear the screen if you want to make it look more professional:

system("CLS");

2008-03-09 18:06:21 補充:
go back to the link again:

http://www.srcf.ucam.org/~cjc93/yahoo/cpp.txt

I have added the lines:

system("cls");

basicly you want to add this line everytime you input an instruction
參考: me, me


收錄日期: 2021-04-23 17:45:01
原文連結 [永久失效]:
https://hk.answers.yahoo.com/question/index?qid=20080308000051KK00124

檢視 Wayback Machine 備份