C语言系统用户管理系统
/*******************************************************************************************************/
/*******************************************************************************************************/
/*题目十八 系统用户管理系统
【说明及要求】
设系统用户信息(用户代码,用户名,密码,系统身份)存放在一个名为user.txt的文件中,
请编写程序实现用户信息的新增、修改密码、删除功能(实现新增和删除时,用户的系统身份必须是“系统管理员”),
并能模拟用户的登陆。如果输入的用户代码和密码在文件中存在,
则显示欢迎某某用户登陆的界面和操作菜单(N.新增、M.修改密码、D.删除),
以便用户完成相应操作,如果输入错误则提示用户重新输入(最多可以尝试3次)。
【提示】
(1)定义一个结构体表示用户信息;
(2)分别编写函数实现用户信息的新增、修改密码、删除、用户登陆等功能;
(3)用户的尝试登陆的次数要通过一个静态变量实现;
(4)编写main函数进行演示。*/
/*******************************************************************************************************/
/*******************************************************************************************************/
#include
#include
#include
#include
#include
#include
#define H 100 /*最大允许保存学生信息数*/
#define pr printf
#define S scanf
struct yonghuxx/*用户信息*/
{
int daima;//用户代码
char sname [17];//用户名
char mima[17];//密码
char shengf[9]; //系统省份
};
struct yonghuxx s;
int p=0;//普通用户p=0;管理员用户p=1
int h;//信息数
int u=0;//强制管理员标记,如果系统使用时数据库还没有任何用户信息,则把第一个打开系统的用户设置为管理员权限u=1
int xiugai();//修改密码
int shanchu();//删除
void denglu();//用户登陆
int shenqing();//新增,申请账号
int fuzhi(char *sFile, char *dFile) ;//将一个文件复制到另一个文件
int guanliyuan();/*管理员*/
int putongyh();/*普通用户*/
/*******************************************************************************************************/
/*******************************************************************************************************/
/*************/
/***主函数****/
/*************/
main()
{
char n;
char v;//清空缓冲区暂存变量
pr("\n\007");
for(;;)
{
pr("主菜单:\nD登录;");
pr("S申请账号;");
//觉得应该允许普通用户申请账号
pr("Q退出\n\007");
scanf("%c",&n);
/* 清空输入流,通过 while 循环把输入流中的余留数据“吃”掉 */
while ( (v= getchar()) != '\n' && v != EOF ) ;//清空缓冲区
if(n=='D')denglu();
else if(n=='S')shenqing();
else if(n=='Q')break;
else pr("输入不正确,请重新输入,(注意区分大小写)");
Sleep(1000);