作者vincent59 (愛世代)
看板C_and_CPP
標題[問題] 新手問break的練習題
時間Wed Aug 18 22:02:59 2010
( *[1m *[m 為色碼,可以按 Ctrl+V 預覽會顯示的顏色 )
( 未必需要依照此格式,文章條理清楚即可 )
遇到的問題: (題意請描述清楚)
題目的功能
1.要使用者輸入4個數字的密碼
2.只提供3次輸入的機會,輸入正確則顯示歡迎登入,否則顯示再輸入一次。
超過三次錯誤後,就顯示拒絕登入,並結束程式
希望得到的正確結果:
程式跑出來的錯誤結果:
我現在只差沒寫出超過三次錯誤後,就顯示拒絕登入
開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux)
VC++2008EXPRESS
有問題的code: (請善用置底文標色功能)
#include<iostream>
#include<conio.h>
using namespace std;
int main()
{
int i,pass;%i為計次變數、pass為密碼
for(i=1;i<=100;i++)
{
cout<<"請輸入四位數通關密碼:";
cin>>pass;
if(pass!=5683)
cout<<"請重新輸入"<<endl;
if(i<=3 && pass==5683)
break;
}
cout<<"歡迎登入"<<endl;
_getch();
return 0;
}
補充說明:
我本來直覺得想在for-loop加if(i>3) break,在迴圈外顯示拒絕登入。
可是也把前一行的也印出來了。
請各位高手幫個忙指點迷津
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 219.84.10.224
→ loveme00835:判斷變數 i 的值來決定你要印什麼訊息 08/18 22:11
→ loveme00835:這個程式可能還需要限制輸入的位數, 不然我輸入超大 08/18 22:13
→ loveme00835:的數字之後, 就不能再繼續試了 08/18 22:13
→ vincent59:果然我想的太單純了 08/18 22:19
→ vincent59:如果不考慮位數的問題,我所缺少的功能要怎麼改呢??? 08/18 22:23
→ loveme00835:看一樓, "歡迎登入"那邊要用if else 包起來 08/18 22:27
推 clarkman:輸入超過三次,就出不來了耶 08/18 23:08