




已阅读5页,还剩13页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
/ main.c/ 记事本V2.0/ Created by x on 13-7-31./ Copyright (c) 2013年 卢宗洋. All rights reserved./#include #include /*变量定义及初始化*/int variable = 0; /定义完成输入选择变量,初始化为0int nNum = 0; /定义主界面功能选择变量,初始化为0int num = 0; /定义删除信息功能函数选择变量,初始化为0int choose_num = 0; /定义查看记事本功能选择变量,初始化为0int nTable = 0; /第一录入第n条信息变量,初始化为0int chooseInPut = 0; /定义输出选择变量,初始化为0int count = 0; /定义查询次数变量count,初始化为0int choosequit = 0; /选择退出查看信息函数/*时间结构体(包括:年-月-日)*/struct Date /日期结构, 用来构造日期结构体 int year; /年 int month; /月 int day; /日Date100; /日期,最多输入100次存储日期/*记事本内容结构体(包括:标题-作者-内容-日期)*/struct NoteBook /记事本 结构 用来构造记事本的结构体 char Theme100; /主题 char Authur20; /作者 char Substance1000; /内容 struct Date date; /日期Books100; /记事本最多存储100条信息/*功能选择函数*/char choose() /自定义函数,实现功能选择 while (1) printf(*记事本*n); printf(* 版 本 说 明 : 0 *n); printf(* 进入记事本请按: 1 *n); printf(* 查看记事本请按: 2 *n); printf(* 修改记事本请按: 3 *n); printf(* 删 除 请 按 : 4 *n); printf(* 退出记事本请按: 5 *n); printf(* 再录入信息请按: 6 *n); printf(* 查看注意事项按: 7 *n); printf(*n); printf(请输入您要操作的选项: n); scanf(%d,&nNum); /选择功能,输入选项打印出提示信息 switch (nNum) case 0: printf(版本说明!n); break; case 1: printf(您选择了进入记事本,请按提示进行操作!n); break; case 2: printf(您选择了查看记事本,请按提示进行操作!n); break; case 3: printf(您选择了修改记事本,请按提示进行操作!n); break; case 4: printf(您选择了删除记事本,请按提示进行操作!n); break; case 5: printf(您选择了退出记事本!n); break; case 6: printf(您选择了再次录入信息,请按提示进行操作!n); break; case 7: printf(您选择了提醒功能!n); break; default: printf(您的操作有误,请重新选择。n); sleep(1); return choose(); /操作错误,返回函数重新操作 break; return 0; /结束 /*输入选择功能函数*/void InPutChoose() /自定义函数,实现信息输入选择功能 printf(*n); printf(* 输入即显信息请按: 1 *n); printf(* 输入永久信息请按: 2 *n); printf(*n); printf(请输入您的选择:n); scanf(%d,&chooseInPut);/*输入记事本功能函数*/void InPut() /自定义函数,实现输入信息主体功能 printf(请输入标题:n); /记事主题 scanf(%s,BooksnTable.Theme); setbuf(stdin, NULL); printf(请输入作者:n); /记事者姓名 scanf(%s,BooksnTable.Authur); setbuf(stdin, NULL); printf(请输入内容:n); /记事本内容 scanf(%s,BooksnTable.Substance); setbuf(stdin, NULL); nTable+;/*日期输入功能函数*/void Time() /自定义函数,实现日期的输入 printf(请输入日期-年:n); /日期 scanf(%d,&BooksnTable.date.year); if (BooksnTable.date.year4080) /判断年份输入 printf(对不起,您的输入有误n); printf(请重新输入:n); scanf(%d,&BooksnTable.date.year); printf(请输入日期-月:n); scanf(%d,&BooksnTable.date.month); if (BooksnTable.date.month12) /判断月份输入是否正确 printf(对不起,您的输入有误n); printf(请重新输入:n); scanf(%d,&BooksnTable.date.month); /*实现月份中某天的正确输入*/int date() /自定义函数,实现日期的输入 while (1) printf(请输入日期-日:n); scanf(%d,&BooksnTable.date.day); if (BooksnTable.date.year%400=0|(BooksnTable.date.year%100!=0&BooksnTable.date.year%4=0) /判断输入日期时候为闰年 if (BooksnTable.date.month=2) /判断输入月份是否为闰年的2月 if (BooksnTable.date.day28) /若是,日期中的“日”不能大于28 printf(对不起,您的输入有误n); printf(请重新输入:n); return date(); elsebreak; else if(BooksnTable.date.month=1|BooksnTable.date.month=3|BooksnTable.date.month=5|BooksnTable.date.month=7|BooksnTable.date.month=8|BooksnTable.date.month=10|BooksnTable.date.month=12) /判断一年中的其他月份的天数 if (BooksnTable.date.day31) printf(对不起,您的输入有误n); printf(请重新输入:n); return date(); elsebreak; else if (BooksnTable.date.month=4|BooksnTable.date.month=6|BooksnTable.date.month=9|BooksnTable.date.month=11) if (BooksnTable.date.day30) printf(对不起,您的输入有误n); printf(请重新输入:n); return date(); elsebreak; else /判断年份不是闰年 if (BooksnTable.date.month=2) if (BooksnTable.date.day=30|BooksnTable.date.day=0) /则一年中的每个月对应的天数为 printf(对不起,您的输入有误:n); printf(请重新输入:n); return date(); elsebreak; else if (BooksnTable.date.month=1|BooksnTable.date.month=3|BooksnTable.date.month=5|BooksnTable.date.month=7|BooksnTable.date.month=8|BooksnTable.date.month=10|BooksnTable.date.month=12) if (BooksnTable.date.day31) printf(对不起,您的输入有误n); printf(请重新输入:n); return date(); elsebreak; else if (BooksnTable.date.month=4|BooksnTable.date.month=6|BooksnTable.date.month=9|BooksnTable.date.month=11) if (BooksnTable.date.day30) printf(对不起,您的输入有误n); printf(请重新输入:n); return date(); elsebreak; return 0; /*显示刚刚输入的记事本的信息如下*/ printf(主题: %sn,BooksnTable-1.Theme); printf(作者: %sn,BooksnTable-1.Authur); printf(内容: %sn,BooksnTable-1.Substance); printf(Date: %d-%d-%dn,BooksnTable.date.year,BooksnTable.date.month,BooksnTable.date.day); return 0;/*完成输入功能函数*/char Finish() /自定义函数,实现完成输入信息功能 while (1) printf(*n); printf(* 返回菜单请按: 1 *n); printf(* 结束操作请按: 2 *n); printf(*n); printf(请输入您要操作的选项:n); scanf(%d,&variable); /输入完成记事功能的后续选项 switch (variable) case 1: /返回主菜单界面 printf(您选择了返回主菜单nn); return main(); /通过主函数返回到主菜单 break; case 2: /退出记事本 printf(您选择了结束操作n); int nNum1 = 0; printf(*n); printf(* 确认退出请按: 1 *n); printf(* 取消退出请按: 2 *n); printf(*n); printf(请输入你的选择:n); scanf(%d,&nNum1); if (nNum1=1) printf(正在退出系统n); sleep(1); printf(退出系统成功。n); return 0; else if(nNum1=2) return Finish(); break; else /选择退出时的错误指令 printf(错误的操作指令,请重新选择指令。n); return Finish(); break; default: /完成输入信息时的错误操作指令 printf(错误的操作指令,请重新选择。n); return Finish(); /返回到功能函数完成 break; return 0; /结束当前死循环 /*查看记事本函数*/char Examine() /自定义函数,实现查看选择功能 while (1) printf(*n); printf(* 显示本次录入信息请按: 1 *n); printf(* 显示某一条信息请请按: 2 *n); printf(* 查看历史记录信息请按: 3 *n); printf(*n); printf(请输入您的选项:n); scanf(%d,&choose_num); switch (choose_num) case 1: printf(您选择了查看所有信息:n); break; case 2: printf(您选择了查看某一条信息:n); break; case 3: printf(您选择了以文件方式查看信息:n); break; default: printf(您的输入有误,请重新输入n); return Examine(); break; return 0; /*查看记事本的所有信息*/char AllContent() /自定义函数,实现查看所有信息功能 int bre = 0; /定义退出查看信息功能变量,初始化为0 printf(您的所有信息如下所示n); for (int i = 0; inTable; i+) printf(第 %d 条记录信息n,i+1); printf(主题: %sn,Booksi.Theme); printf(作者: %sn,Booksi.Authur); printf(Date: %d-%d-%dn,Booksi+1.date.year,Booksi+1.date.month,Booksi+1.date.day); printf(内容: %sn,Booksi.Substance); while (1) printf(*n); printf(* 返回系统界面请按: 1 *n); printf(* 结束系统操作请按: 2 *n); printf(*n); printf(请输入您要操作的选项:n); scanf(%d,&bre); if (bre=1) printf(系统将于2秒后返回主界面n); sleep(1); printf(系统将于1秒后返回主界面n); sleep(1); printf(返回主界面成功,请选择其他操作!n); return main(); else if (bre=2) printf(您选择了结束系统操作n); printf(系统将于2秒后退出n); sleep(1); printf(系统将于1秒后退出n); sleep(1); printf(系统退出成功,谢谢使用!n); return 0; else printf(您的操作有误,请重新选择。n); /*退出查看功能函数*/int QuitCertain() printf(*n); printf(* 退出查看请按: 1 *n); printf(* 继续查看请按: 2 *n); printf(* 退出程序请按: 3 *n); printf(*n); while (1) printf(请输入您的选项:n); scanf(%d,&choosequit); switch (choosequit) case 1: printf(您选择了退出查看!n); return main(); break; case 2: printf(您选择了继续查看!n); break; case 3: printf(您选择了退出程序!n); break; default: printf(对不起,您的输入有误!n请重新输入n); break; return 0; return 0;/*查看记事本的部分信息*/int Certain() /自定义函数,用来查看部分信息功能 int import_year = 0; int import_month = 0; int import_day = 0;/ int choosequit = 0; int nCount = 0; printf(请输入您要查看信息的年份:n); scanf(%d,&import_year); if (import_year4080) printf(对不起,您的输入有误,请重新输入n); scanf(%d,&import_year); printf(请输入您要查看信息的月份:n); scanf(%d,&import_month); if (import_month12) printf(对不起,您的输入有误,请重新输入n); scanf(%d,&import_month); printf(请输入您要查看信息的日子:n); scanf(%d,&import_day); if (import_day31) printf(对不起,您的输入有误,请重新输入n); scanf(%d,&import_day); for (int i = 0; i100; i+) if (import_year=Booksi+1.date.year&import_month=Booksi+1.date.month&import_day=Booksi+1.date.day) printf(恭喜您,成功找到了您要搜寻的结果n); printf(第%d条:n,i+1); printf(%sn,Booksi.Theme); printf(%sn,Booksi.Authur); printf(%d-%d-%dn,Booksi+1.date.year,Booksi+1.date.month,Booksi+1.date.day); printf(%sn,Booksi.Substance); nCount+; QuitCertain(); else if(nCount=0) printf(对不起,没有找到您要查找的信息!n); QuitCertain(); return 0;/*修改记事本函数*/void Revise() /自定义函数,实现修改信息功能 int AgainWriteNum = 0; /定义索要修改记事本的位置变量,初始化为0 printf(您的所有信息如下所示n); for (int i = 0; inTable; i+) printf(第 %d 条记录信息n,i+1); printf(主题: %sn,Booksi.Theme); printf(作者: %sn,Booksi.Authur); printf(Date: %d-%d-%dn,Booksi+1.date.year,Booksi+1.date.month,Booksi+1.date.day); printf(内容: %sn,Booksi.Substance); printf(请输入要修改的信息的编号:n); scanf(%d,&AgainWriteNum); printf(请输入信息主体:n); scanf(%s,BooksAgainWriteNum-1.Theme); printf(请输入信息作者:n); scanf(%s,BooksAgainWriteNum-1.Authur); printf(请输入信息内容:n); scanf(%s,BooksAgainWriteNum-1.Substance); Time(); date();/*删除记事本函数*/char Delete() /自定义函数,实现删除选择功能 while (1) printf(*n); printf(* 删除所有内容请按: 1 *n); printf(* 删除部分内容请按: 2 *n); printf(*n); scanf(%d,&num); switch (num) case 1: printf(您选择了删除所有内容!n); break; case 2: printf(您选择了删除部分内容!n); break; default: printf(对不起,您的操作有误,请查证后重新输入。n); break; return 0; /*删除部分信息功能函数*/void Delete_Certent() /自定义函数,实现删除功能 int cer_table = 0; printf(请选择删除信息的位置:n); scanf(%d,&cer_table); printf(您选择了删除第%d条信息:n,cer_table); printf(*n); printf(* 确认请按: 1 *n); printf(* 取消请按: 2 *n); printf(*n);/*删除所有内容功能函数*/char DeleteAll() /自定义函数,实现删除功能 int dele_all = 0; printf(*n); printf(* 确认删除所有请按: 1 *n); printf(* 不 删 除 请 按 : 2 *n); printf(*n); printf(请输入您的选项:n); scanf(%d,&dele_all); switch (dele_all) case 1: memset(&Date, 0, 100); memset(&Books, 0, 100); nTable=0; printf(正在做删除处理命令n); printf(2秒后将删除全部内容n); sleep(1); printf(1秒后将删除全部内容n); sleep(1); printf(删除成功!n); while (1) printf(*n); printf(* 返回系统界面请按: 1 *n); printf(* 结束系统操作请按: 2 *n); printf(*n); int bre = 0; printf(请输入您要操作的选项:n); scanf(%d,&bre); if (bre=1) printf(系统将于2秒后返回主界面n); sleep(1); printf(系统将于1秒后返回主界面n); sleep(1); printf(返回主界面成功,请选择其他操作!n); return main(); else if (bre=2) printf(您选择了结束系统操作n); printf(系统将于2秒后退出n); sleep(1); printf(系统将于1秒后退出n); sleep(1); printf(系统退出成功,谢谢使用!n); return 0; else printf(您的操作有误,请重新选择。n); break; case 2: return Delete(); break; default: break; return 0;/*退出功能函数*/void Quit() /自定义函数用来实现退出功能 printf(正在做退出处理命令,请稍后:n); printf(2秒后系统退出使用n); sleep(1); printf(1秒后系统退出使用n); sleep(1); printf(退出成功,欢迎下次继续使用。n);/*提示信息功能函数*/char Warn() /自定义函数用以查看提示信息 printf(友情提示!n); printf(1:在使用本程序记录信息时,日期的输入为数字。n); printf(2:在信息录入时,不要包括空格!n); printf(3:要按提示操作哦,否则可能造成可怕的后果!n); sleep(2); int opt = 0; printf(*n); printf(* 退出提醒请按: 1 *n); printf(* 退出程序请按: 2 *n); printf(*n); printf(请输入您的选项:n); scanf(%d,&opt); if (opt=1) return main(); else if (opt=2) Quit(); return 0;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年烟草设备维修工新员工岗位专业知识笔试题目及答案
- 2025年乘务人员考试题库及答案
- 药用植物学与生药学测试题及答案
- 高校经济合同模板(3篇)
- 综评面试题库及答案书
- 安全输液考试题及答案
- 高粱地种植合同模板(3篇)
- 大连淘宝店铺产品生命周期管理代运营协议
- 2025国家公务员面试题及答案
- 体育公司与个人运动员参赛合同
- 湖北省2025届高三数学上学期9月起点考试含答案
- 国际压力性损伤-溃疡预防和治疗临床指南(2025年版)解读课件
- 《优化教学策略:打造卓越课件的秘诀》课件
- 猪蹄供货协议书范本
- 2025年数学新课标《义务教育数学课程标准(2025年版)》解读
- 《拍摄校园微视频》教学课件-2024-2025学年冀美版(2024)初中美术七年级下册
- 抗美援朝“铭记历史迎接挑战”-第11年迎回在韩中国人民志愿军烈士遗骸主题班会课件
- 公路工程造价编制自采材料预算单价计算课件
- 学生宿舍的卫生管理研究
- 管制部运行管理手册(机场)第六章 运行程序
- 永宁110KV变电站调试方案
评论
0/150
提交评论