C++的字符串输入密码提示不能输出超过三次。。编码怎么错了
#include<iostream>#include<string>usingnamespacestd;charmain(chari){staticcharstr1[10...
#include<iostream>
#include<string>
using namespace std;
char main(char i)
{static char str1[10]=("wahaha");
static char str2[10];
cout<<"请输入密码"<<endl;
for(i=0;i<3;i++)
cin>>str2;
if (strcat(str1,str2)==0)cout<<"密码正确"<<endl;
else cout<<"密码错误请 展开
#include<string>
using namespace std;
char main(char i)
{static char str1[10]=("wahaha");
static char str2[10];
cout<<"请输入密码"<<endl;
for(i=0;i<3;i++)
cin>>str2;
if (strcat(str1,str2)==0)cout<<"密码正确"<<endl;
else cout<<"密码错误请 展开
展开全部
比较两个字符串应该用 strcmp 或者 strncmp,你用的 strcat 是连接两个字符串的。而且你的代码中还有一些语法错误。以下方法供参考:
#include <iostream>
#include <string>
using namespace std;
int main() {
static char passwd[10] = "wahaha";
static char input[10];
int i;
cout << "请输入密码" << endl;
for(i = 0; i < 3; i++) {
cin >> input;
if (strcmp(input, passwd) == 0) {
cout << "密码正确" << endl;
break;
} else {
cout << "密码错误请重试" << endl;
if (i == 2)
cout << "超过重试次数" << endl;
}
}
return 0;
}
结果:
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询