用c语言编写一个设置密码的程序

用c语言编写一个设置密码的程序,第1张

#include

#include

typedef

struct

{

long

number

//用户编号

6位

char

name[20]

/姿宴/用户态闭名

char

password[8]

//用户密码

int

power

//权限判断

1

为管理帆册裂员2为普通用户

}

user

user

yh[100]={100000,"gavin","gavine",1,100001,"wnag","wangf",2}

int

length

=

2

int

checkuser(long

num,

const

char

*nm,

const

char

*pwd)

{

int

i

for

(i

=

0

i

<

length

++i)

{

if

(yh[i].number

==

num

&&

!strcmp(yh[i].name,

nm)

&&

!strcmp(yh[i].password,

pwd))

{

if

(1==yh[i].power)

return

1

else

return

2

}

}

}

void

main()

{

printf("%d\n",

checkuser(100000,

"gavin",

"gavine"))

}

- -|

这么多问题才10分...

给你一个密文输出的程序好了做搭..

其他自己想.

#include <stdio.h>

main()

{

char str[9] //密码串长9为

inputPW(str,8) //有效密码长为8 最后一位要放\0 结束符的!

printf("\n密码为: %s",str)

}

inputPW(char * s,int len)//自己写的密码输入的函数

{

int i

fflush(stdin) //清输入流 跟flushall()类似

for(i=0i++)

{

s[i]=getch()

if(s[i]==13) //输入结束 不能用=='\n'来判断!!

//因为对于回车来说getchar()='\n'=10而getch()=13 !='\n' 这个要知道!

break

if(s[i]==8 &&i>0) //如果用户按退格扮胡宽键 并且要有格可退时候

{

printf("\b \b") //显示退一格

i=i-2 //输入数据退2(因为for循环体会加1 所以实际就是退了1)

continue

}

if(i==len) {i--continue}

printf("*")

}

s[i]='\0' /厅亮/末尾补\0 所以该密码实际有效长度为i-1定义有效长为len 实际定义的串长为len+1

}


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

原文地址: https://outofmemory.cn/yw/8277579.html

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

发表评论

登录后才能评论

评论列表(0条)

保存