任务:提供 管理员 和 用户 一个系统 可以查看学生信息
系统提供 帐号登录 信息管理功能
管理员用户可以对学生信息进行 增 删 改 查 ,并 同时能够 管理账户 信息
普通用户 只能进行 对信息的查询功能 , 可以根据学号 或者 姓名查找
1. 初始化 —— 3个文件
配置文件 帐号信息文件 学生信息文件
配置文件用来存放 帐号信息文件 和 学生信息文件 的路径
帐号信息文件 存放 用户帐号 和用户密码 【用户权限】 每个用户信息分一行 帐号和密码直接 空格分开
学生信息文件 存放 学生的 学号 姓名 课程号 分数 每个学生一行 信息之间用空格分开
运用argv[1] 来传入 配置文件的地址, 通过读配置文件读取 帐号文件 学生文件 路径
运用fgets 读 帐号和学生信息的每一行 存放在 str_temp 字符串中, 再通过sscanf 将str_temp字符串中的
信息存入个 定义的 结构体变量中; 每一个结构体结点 读完可进行链表的插入
链表建立完成可以 对链表进行排序;
2. 用户登录 —— 帐号登录 密码匹配
输入str_name 帐号名 与 帐号链表进行匹配 匹配不到则表示无该帐号信息 ,若找到该帐号则 再输入密码
密码与 匹配到的 帐号结点 密码 strcmp比较 ;
密码输入不显示字符 只显示 **** 通过getch() 函数实现 输入不显示 再通过 putchar() 函数 输出 ***
通过 char ch ; ch=getch() ; 通过判断 ch 的值 来确定输入的是 普通字符 还是 退格符 ,退格符合则
进putchar() 退格 空格 退格 3次操作; 并且可以设置一个 count 来计数, 控制输入字符串的最大长度。
3. 用户界面—— 信息管理
1. 通过 用户权限 来判定 是管理员 还是 普通用户
2. 各种界面的while break 实现
3. 对修改过的 信息 要写回文件,通过 fprintf() ; 函数将结点信息写入 文件 每个结点完毕 \r\n 进行换行