c语言 密码输入

c语言 密码输入,第1张

因为你不清空数组,input超过密码长度的值还保留在数组里面。给你详细举例,

当你输入超过密码长度hehe1234,你的input里面的数据就是{h,e,h,e,1,2,3,4...}这时候你再输入正确密码hehe123,前面的都被覆盖,但是4还保留在数组里面,你的input其实还是hehe1234,所以你不可能再得到正确密码。

可以参考下面的代码:

#include <cstring>

#include <cstdio>

cout<<"Please enter password: "

gets(user)

if(strcmp(user,"password"/* 随便输入一个初始密码*/))cout<<"error"

else {……}

扩展资料:

C++参考函数

int isupper(int ch)  若ch是大写字母('A'-'Z')返回非0值,否则返回0

int isxdigit(int ch) 若ch是16进制数('0'-'9','A'-'F','a'-'f')返回非0值,否则返回0

int tolower(int ch)  若ch是大写字母('A'-'Z')返回相应的小写字母('a'-'z')

int toupper(int ch)  若ch是小写字母('a'-'z')返回相应的大写字母('A'-'Z')

参考资料来源:百度百科-C++

#include

void

main()

{

int

n,password=123456,i=1

while(1)

{

printf("输入密码:")

scanf("%d",&n)

if(n==password)

printf("welcome

to

use

the

software\n")

else

{

if(i<3)

printf("剩余的可输入密码的次数为:%d\n",3-i)

else

printf("password

error

!

you

can

not

use

the

software\n")

i++

}

if(i>=4||n==password)break

}

}

这个是不需要用return的,简明一点,初学的应该会


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12052912.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存