PAT乙級題解 試密碼

2022-09-09 02:30:12 字數 1264 閱讀 9846

當你試圖登入某個系統卻忘了密碼時,系統一般只會允許你嘗試有限多次,當超出允許次數時,賬號就會被鎖死。本題就請你實現這個小功能。

輸入格式:

輸入在第一行給出乙個密碼(長度不超過20的、不包含空格、tab、回車的非空字串)和乙個正整數n(<= 10),分別是正確的密碼和系統允許嘗試的次數。隨後每行給出乙個以回車結束的非空字串,是使用者嘗試輸入的密碼。輸入保證至少有一次嘗試。當讀到一行只有單個#字元時,輸入結束,並且這一行不是使用者的輸入。

輸出格式:

對使用者的每個輸入,如果是正確的密碼且嘗試次數不超過n,則在一行中輸出「welcome in」,並結束程式;如果是錯誤的,則在一行中按格式輸出「wrong password: 使用者輸入的錯誤密碼」;當錯誤嘗試達到n次時,再輸出一行「account locked」,並結束程式。

輸入樣例1:

correct%pw 3

correct%pw

correct@pw

whatisthepassword!

correct%pw

#

輸出樣例1:

wrong password: correct%pw

wrong password: correct@pw

wrong password: whatisthepassword!

account locked

很氣了,坑了我那麼久是因為如果輸入aaa bbb的話,cin輸入肯定是作為兩個字串處理了,所以改成了getchar()加getline(cin,str);這樣輸入字串中間有個空格也會單做乙個字串來處理。。。

#include #include 

#include

#include

#include

#include

#include

using

namespace

std;

//在vs裡scanf必須用scanf_s這樣的

void

no_67()

else

if (cnt <= n && str !=pwd) }}

}void

no_67_1()

else

if ( str !=pwd) }}

}int main(int argc, char**ar**)

PAT乙級 試密碼

題目描述 當你試圖登入某個系統卻忘了密碼時,系統一般只會允許你嘗試有限多次,當超出允許次數時,賬號就會被鎖死。本題就請你實現這個小功能。輸入格式 輸入在第一行給出乙個密碼和乙個正整數 n,分別是正確的密碼和系統允許嘗試的次數。隨後每行給出乙個以回車結束的非空字串,是使用者嘗試輸入的密碼。當讀到一行只...

PAT乙級1067 試密碼 20

題目 當你試圖登入某個系統卻忘了密碼時,系統一般只會允許你嘗試有限多次,當超出允許次數時,賬號就會被鎖死。本題就請你實現這個小功能。輸入格式 輸入在第一行給出乙個密碼 長度不超過20的 不包含空格 tab 回車的非空字串 和乙個正整數n 10 分別是正確的密碼和系統允許嘗試的次數。隨後每行給出乙個以...

PAT(乙級)1067 試密碼 20

1067.試密碼 20 當你試圖登入某個系統卻忘了密碼時,系統一般只會允許你嘗試有限多次,當超出允許次數時,賬號就會被鎖死。本題就請你實現這個小功能。輸入格式 輸入在第一行給出乙個密碼 長度不超過 20 的 不包含空格 tab 回車的非空字串 和乙個正整數 n 10 分別是正確的密碼和系統允許嘗試的...