基于C语言实现用户管理系统设计

2022-09-10 版权声明 我要投稿

随着互联网的发展, PC端与手机客户端的用户人数在逐年增加, 通过程序设计实现用户管理系统有助于普通用户的使用和隐私保护以及管理员的管理。本文基于Dev-C环境下, 运用C语言实现一个简单的用户管理系统的开发。

系统功能设计

用户管理系统总功能是通过实现用户登录, 达到用户查看, 修改个人信息的目的, 同时方便管理员查看管理用户使用状态。本系统分为六大部分, 其中模块功能如下:

(1) 实现普通用户注册, 添加用户信息:用户名、密码、确认密码、性别、出生年月以及验证信息 (邮箱) 。

(2) 判断邮箱格式是否符合

(3) 实现普通用户登录, 验证用户名与密码。

(4) 实现普通用户的信息修改:用户名, 密码, 性别以及出生年月。

(5) 实现管理员登录以及选择查询所有用户信息和锁定用户信息。

(6) 实现管理员解锁锁定用户信息 (按照用户名查询) 。

程序主流程图

设置主界面, 方便用户注册或者登录。

模块功能实现

在用户管理系统功能的实现过程中, 多次使用字符串函数strcmp来判断用户名, 密码等输入是否正确。

一、普通用户注册

通过scanf语句实现用户名, 密码, 性别, 出生年月等的输入。对于定义的字符串变量, 在输入时可省略“&”。在登录过程中需要调用自定义函数判断邮箱格式, 输入验证信息 (邮箱) , 以及判断注册所输入的邮箱格式是否正确或是否被注册过。在注册成功后默认用户使用状态未锁, 即lock=0。

二、判断邮箱格式

在验证邮箱的时候, 通过gets () 输入邮箱。判断是否符合邮箱格式:邮箱必须有“@”和“.”, “@”在“.”前面, 且“@”不能开头, “.”不能结尾。在邮箱输入正确的前提下, 判断是否被重复注册过。

三、普通用户登录

普通用户登录过程中, 首先通过字符串函数strcmp判断用户是否成功注册过, 在用户注册成功的前提下, 判断用户账号是否处于锁定状态, 若用户账号未被锁定即有三次机会输入密码。成功登录后, 通过调用自定义函数即可选择修改用户信息或结束操作。若三次密码均输入错误, 用户账号将会被锁定, 即lock=1。此时即可通过联系管理员, 验证个人信息解锁账号。

四、普通用户信息修改

普通用户登录后选择信息修改, 即可修改用户名, 密码, 性别以及出生年月等信息, 邮箱暂不可修改。在修改信息时选择使用do...while语句, 不同于while语句, 它首先执行循环体再检查循环控制条件, 若循环条件为真, 继续循环, 若为假则结束循环, 因此无论循环控制条件是否为真, 循环体至少循环一次。而while语句先判断循环条件, 若循环条件为真, 执行循环体后再次判断循环条件。若为假则结束循环[3]。

五、管理员登录

系统运行过程中假设管理员:用户名admin, 密码:admin

在登录过程中通过字符串函数判断用户名以及密码是否正确。管理员登录后可查看所有已注册用户信息以及锁定用户信息 (按照用户名排序) , 但只显示用户名以及邮箱以保护用户隐私。在查看锁定用户信息时可以通过调用自定义函数选择是否解锁锁定用户。

六、管理员解锁用户信息

管理员登录后判断是否有锁定用户, 成功查看锁定用户信息后可选择是否解锁用户, 同时可以通过字符串函数strcmp选择解锁哪位用户。解锁成功后即返回主页面。

七、结语

通过C语言实现简单的用户管理系统, 首先通过结构体定义用户信息, 主函数通过调用若干自定义函数实现功能。但因为定义结构体数组元素个数, 使得用户数量有限, 还需进一步改善。目前此系统未设计删除用户信息的功能, 也需要进一步增加。

摘要:本文在Dev-C环境下, 运用C语言开发一个简单的用户管理系统, 利用结构体数组与字符串函数实现数据结构设计。系统各个功能模块通过函数实现, 部分功能的使用采用菜单选择形式。本系统完成普通用户的注册登录, 信息查询与修改, 以及管理员对用户信息的查询与解锁。

关键词:C语言,用户管理系统

参考文献

[1] 彭莉.基于C语言的学生成绩管理系统的实现[J].武汉工程职业技术学院学报, 2017, 29 (04) :36-39.

[2] 叶小芹, 张静.基于C语言的学生成绩管理系统的设计与实现[J].电脑知识与技术, 2017, 13 (04) :59-62.

[3] 何钦铭, 颜晖.C语言程序设计 (第三版) [M].北京:高等教育出版社, 2015.

上一篇:关于如何完善工程造价管理的探讨下一篇:论某工程深基坑支护施工