1067 试密码

坑点一:尝试输入的密码可能包含空格符,所以必须用getline(cin,str)接收一行输入;

坑点二:cin>>str 和getline(cin,str)连用时,中间必须要加getchar()吸收换行符

#include<iostream>
using namespace std;

int main() {
    string password,str;
    int n;
    cin>>password>>n;
    getchar();//cin>>str 和getline(cin,str)连用时,中间必须要加getchar()吸收换行符
    for(int i = 1; i <= n; ++i) {
        getline(cin,str);//尝试输入的密码可能包含空格符,所以必须用getline(cin,str)接收一行输入;
        if(str == "#") break;
        if(str == password) {
            printf("Welcome in\n");
            break;
        } else {
            cout << "Wrong password: " << str << endl;
            if(i == n) {
                printf("Account locked\n");
            }
        }
    }
    return 0;
}

1067 试密码

 

上一篇:本地无法启动MySQL服务,报的错误:1067,进程意外终止---解决


下一篇:AcWing 1067. 精确覆盖问题 DLX