PAT 乙级 1067 试密码 (20 分)

本文介绍了一段使用C++实现的简单密码验证程序,通过模拟登录过程来判断用户输入的密码是否正确,同时处理了密码中可能包含空格的情况,并在尝试次数超过限制时锁定账户。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题意简单模拟一下试密码的过程 如果超过规定次数 输出 账户锁定 如果在规定次数内密码正确 输出 欢迎进入 有一个坑点,就是正确密码是不包含空格的 但是输入的密码可以包含空格的 所以要用getline接受 贴代码

#include<bits/stdc++.h>
using namespace std;
int main()
{
	string ans;
	int n;
	cin>>ans;
	cin>>n;
	string tr[10000];
	int i=0;
	getchar();
	while(1)
	{	
		getline(cin,tr[i++]); //用getline接受 可以接受空格
		if(tr[i-1][0] == '#' && tr[i-1].length()==1) //接收到#号结束
		break;
	}
	i--;
	int j;
	for(j=0;j<n && j<i;j++)
	{
		if(tr[j] == ans){
				printf("Welcome in\n");
				return 0;
		}
		else
		printf("Wrong password: ");
		cout<<tr[j]<<endl;
	}
	if(j==n)     //如果j的实验次数和规定次数相等 代表账户已经锁定
		printf("Account locked\n");
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值