资源简介
2.程序完成后应该完成如下基本功能:
1)用自定义日记的存储结构,每篇日记至少包含日期,内容等字段;
2)使用者必须输入密码;
3)写日记与保存功能;
4)日记查阅:按日期查看,按关键字查看,按顺序查看功能(从某一篇开始)
3.在完成上述基本功能的前提下,有能力的同学可以完成如下加强功能:
1)实现日记的永久存储。
2)对保存的密码进行变换,以免泄密。
3)允许多人使用。
4)在程序的提示语言清晰明确,界面美观并且适用。
1)用自定义日记的存储结构,每篇日记至少包含日期,内容等字段;
2)使用者必须输入密码;
3)写日记与保存功能;
4)日记查阅:按日期查看,按关键字查看,按顺序查看功能(从某一篇开始)
3.在完成上述基本功能的前提下,有能力的同学可以完成如下加强功能:
1)实现日记的永久存储。
2)对保存的密码进行变换,以免泄密。
3)允许多人使用。
4)在程序的提示语言清晰明确,界面美观并且适用。
代码片段和文件信息
/*
程序亮点:
(1)实现多用户使用,各用户间数据相互独立。
(2)用户可以更改自己的密码,并且日记的加密是以用户密码来加密的。
(3)在查看日记时,不会一次性将所有符合的日记输出,而是控制一篇一篇输出,而且用
户可以自行控制查看上一篇或是下一篇 ,并且能够方便的删除正在查看的日记。
(4)删除用户的同时会将用户的所有日记删除。
使用说明:
为了便于测试,已建立了用户名为:aaa,密码为:aaa的用户,并且建立了几篇日记。
如果要测试删除用户操作,由于删除用户的同时会将用户的所有日记删除,所以建议不要
删除aaa用户,以免测试数据丢失,可以自行注册一个新用户,再删除。
*/
#include
#include
#include
#include
#define MAXSIZE 5000 //日记最大长度
#define ESC 27
#define LEN sizeof(diarys)
typedef struct diary //用户与日记共用的结构体
{char other[3][30]; //作为日记时:心情、天气、日期 ; 作为用户时:用户名、密码
char text[MAXSIZE]; //正文
struct diary *next;
int flag;
}diarysusers;
/**************** 函数声明 ******************************************************/
char menu_main(); //主菜单
void login(); //登录用户与用户操作
char menu_diary(); //用户操作菜单
users * login_user(users *puserchar name[]char password[]); //用户登录输入用户名和密码
diarys * new_diary(diarys * head); //新建日记
void input_diary(char text[]); //输入日记
diarys * select_diary(diarys *head); //日记查看
char menu_seek(); //日记查看菜单
void print_node(diarys *p); //输出结点内容
diarys * output_diary(diarys *head); //输出所有激活态结点内容
void shaixuan_other(diarys * headint i); //以other[i][]筛选结点
int mohu_shaixuan(diarys *pchar text[]); //模糊字符匹配,返回0则没有匹配
void shaixuan_keyword(diarys *head); //按关键字筛选日记
void user_defined(diarys *head); // 用户自定义筛选
void sign_up(); //注册用户
void del_user(); //删除用户
void input_password(char password[]); //输入密码
void change_password(users *puserusers *user1); //更改用户密码
diarys * del_node(diarys * headdiarys * pflag); //删除结点
void activation_diary(diarys * head); //激活所有日记结点
void encrypt_password(char password[]); //加密密码算法
void encrypt_diary(char text[]char password[]); //加密日记算法
void decode_diary(char text[]char password[]); //解密日记算法
void encrypt_alldiary(diarys * headchar password[]); //加密所有日记
void de
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 25500 2009-05-10 15:12 aaa.dat
文件 5100 2009-05-10 15:12 users.dat
文件 19901 2009-05-10 15:11 日记管理系统.c
----------- --------- ---------- ----- ----
50501 3
相关资源
- 带时间温度显示的室内灯光控制系统
- 成绩管理系统(数据结构)
- FIR低通滤波器 ccs运行环境
- C malloc函数用法
- 嵌入式局域网聊天系统客户端
- 算法竞赛入门经典 第2版刘汝佳+高清
- 基于单片机的GPS定位及显示系统设计
- 链表实现通讯录管理系统
- PowerShell-6.2.1-win-x86.zip
- pl/0编译器 语法分析
- 源程序阅读与调试课程设计报告--学生
- 谁说程序员不浪漫?!基于easyX图形库
- 编译原理课设c编译器
- MCP3421 STM32 Driver
- ADS1100 STM32 Driver
- 单片机89c52与MLX90614红外的测温程序
- stm32f103AES加密 cbc模式
- 单片机 点阵 字模提取软件
- C高级编程讲义-传智播客
- NOIP必学内容之前缀和与差分颜鸿宇
- Skyline高效检索算法实现.zip
- STM8S103系列IO模拟串口通信实现真正串
- stm32f103c8t6移植uC/OS-III基于HAL库的工程
- 温度、一氧化碳、二氧化碳、PM2.5以及
- 王道论坛计算机考研机试指南
- 有限元中网格剖分算法
- PLC开源资料
- STM8L051.串口接收IDLE中断.zip
- The_C_Programming_Language(英文版)
- 广东工业大学题目详解含截图Anyview
评论
共有 条评论