ImageVerifierCode 换一换
格式:DOCX , 页数:29 ,大小:675.53KB ,
资源ID:28465977      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/28465977.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(日程活动管理系统.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

日程活动管理系统.docx

1、日程活动管理系统(要求1500字以上,字体五号,宋体,行间距1.15)一、项目的目的与意义 日程活动管理系统主要根据课程设计要求进行设计,能够进行个人的事件记录,可以将程序使用者的时间安排,重要事件,以及个人行程等事件做出具体详细的记述,并能够使使用者在程序上完成查看时间的功能,足以使得使用者避免忘记一些重要事件,也可以为使用者带来一些便利,帮助使用者节省了时间。电子备忘录相较于笔记本,其最大的好处在于可以不受纸张的限制,并切实的使用者可以在短时间内记述大量事件;查询时也可以节省大量的时间,使得使用者可以减短查询时间,方便快捷。同时,使用日程活动管理系统也是一种现代化的代表,将电子科技应用与人

2、们的日常生活中,达到现代实惠的水平。二、总体设计(思路、框图等)1.系统目标 (1) 录入:添加一个活动,包括事件的活动标题,活动日期,开始结束时间,活动类型。(2) 删除:删除活动信息。(3) 批量添加:能够批量添加活动信息。 (4) 显示事件:能显示活动详细信息。(5) 退出。2.系统实现方案为实现系统功能,本程序主要分为五个大模块。它们分别为:输入信息、删除信息、批量添加信息、显示事件,退出该程序。这五个函数再通过主函数调用分别得以实现。主函数,首先提供了程序运行时的友好界面,列出了清单,提供用户做出选择,以便决定使用通讯录的哪种功能。然后,通过执行多分支选择语句switch语句,分别实

3、现其它各个函数的调用功能。三、详细设计(主要的数据类型的定义,完成的各个功能模块的算法) 1.数据类型 int id; string biaoti; string time; string start_time; string end_time; int type;2.函数模块 1)日程添加:int Sche:tianjia_acti(int num) 2)批量添加日程 int Sche:piliangtianjia_acti(int num) 3)删除日程 int Sche:shanchu_acti(int num) 4)显示日程信息 4.1显示所有信息 4.2按照列表显示日程信息 4.3按

4、照日历形式显示日程信息 4.4查询日程信息 5)退出四、涉及的知识点(项目中涉及的知识点,请在下面表格中打勾。)类继承多态性运算符重载模板STL图形化界面其他五、调试与测试(运行的界面截图) 1.运行程序,界面如下 2.键入1,输入一条日程信息 3.键入3,批量添加日程 4.键入4,进入显示日程信息页面 4.1键入1,显示所有信息 4.2键入2,以列表形式显示信息 4.3键入3,以日历形式显示日程信息 4.4键入4,查询日程信息 5.退出 六、收获与总结 本次系统设计的是日程活动管理系统,类似于备忘录,它在我们生活中很常见,自己就试着去利用所学的知识实现一个自己的系统。经过几天的设计,终于完成

5、了。功能齐全,提示语清晰,操作简单。这次课程设计是培养我们综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对我们实际工作能力的具体训练和考察过程。回顾此次C+的学习,至今我仍感慨颇多,此次课程设计不仅可以巩固了以前所学的知识,而且学到了很多在书本上所没有学到过的知识。我坚信此次的系统设计能够在以后的学习与实践结合方面对我提供很大的帮助!谢谢老师!七、附录(附上设计的源代码) #include #include #include #include #include #include #include #include #include #include using n

6、amespace std;typedef struct Schedule int id; string biaoti; string time; string start_time; string end_time; int type;Schedule;Schedule a100;class Schepublic: int caidan(); int tianjia_acti(int x); int piliangtianjia_acti(int x); int shanchu_acti(int x); void xianshisuoyou(int num); void liebiaoxian

7、shi(int num); void rilixianshi(int num);int Sche:caidan() int cho; coutt欢迎使用日程活动管理系统endl; cout* 主菜单 *endl; coutt1 在这里添加一个日程endl; coutt2 在这里删除一个日程 endl; coutt3 在这里添加多个日程 endl; coutt4 在这里显示日程信息 endl; coutt5 退出endl; cout*endl; cout请输入你的选择 (1 - 5): cho; while(cho 5) cout cho; return cho;bool compare(con

8、st Schedule &x,const Schedule &y) if(x.time != y.time) return x.time y.time; else if(x.time = y.time) return x.start_time e1) return false; else return true; int Sche:tianjia_acti(int num) int flag = 0,flag1 = 0,f = 0; int i = num;loop1: while(flag = 3) cout由于输入太多导致发生错误!n; return num; coutai.time; c

9、in.ignore(40,/); string time = ai.time; cinai.start_time; cin.ignore(40,/); string start_time = ai.start_time; cinai.end_time; cin.ignore(40,/); cinai.biaoti; cin.ignore(40,/); cinai.type; flag+; if(ai.time.length() != 10 | ai.time2 != - | ai.time5!=- | ai.time0-03) cout24 | (ai.start_time3-0)*10+(a

10、i.start_time4-0)60) cout24 | (ai.end_time3-0)*10+(ai.end_time4-0)60) cout输入格式错误:请输入活动结束时间!n; flag1+; if(compare_time(ai.start_time,ai.end_time) = false) cout输入格式错误:活动开始时间应该早于结束时间!n; flag1+; for(int j=0; jnum; j+) if(aj.time = ai.time) /日期相等 if(compare_time(ai.start_time,aj.end_time)=true | compare_t

11、ime(aj.start_time,ai.end_time)=true) f+; if(f != 0) cout 4) cout输入格式错误:活动类型!endl; flag1+; if(flag1 != 0) flag1 = 0; goto loop1; else if(flag1 = 0) return +num; int Sche:piliangtianjia_acti(int num) int s = 0; int err = 0; coutai.time; cin.ignore(40,/); if(ai.time = 0) coutThis input: s,Time conflict

12、: errai.start_time; cin.ignore(40,/); cinai.end_time; cin.ignore(40,/); cinai.biaoti; cin.ignore(40,/); cinai.type; if(ai.time.length() != 10 | ai.time2 != - | ai.time5!=- | ai.time0-03) continue; if(ai.start_time.length() != 5 | ai.start_time2!=: | (ai.start_time0-0)*10+(ai.start_time1-0)24 | (ai.s

13、tart_time3-0)*10+(ai.start_time4-0)60) continue; if(ai.end_time.length() != 5 | ai.end_time2!=: | (ai.end_time0-0)*10+(ai.end_time1-0)24 | (ai.end_time3-0)*10+(ai.end_time4-0)60) continue; if(compare_time(ai.start_time,ai.end_time) = false) continue; for(int j=0; jnum-1; j+) if(aj.time = ai.time) /日

14、期相等 if(compare_time(ai.start_time,aj.end_time)=true | compare_time(aj.start_time,ai.end_time)=true) err+; flag+; if(flag != 0) flag = 0; continue; num+;s+; int Sche:shanchu_acti(int num) string date;int flag = 0; coutdate; for(int i=0; inum; i+) ai.id = i+1; if(ai.time = date) flag+; coutai.id setw(

15、8)ai.timesetw(8)ai.start_timesetw(8)ai.end_timesetw(8)ai.biaoti; if(ai.type = 1) coutsetw(8)Homeendl; else if(ai.type = 2) coutsetw(8)Workendl; else if(ai.type = 3) coutsetw(8)Studyendl; else if(ai.type = 4) coutsetw(8)Playendl; if(flag = 0) cout找不到您输入的时间信息!n; return num; int id; cout id; for(int i=

16、0; inum; i+) if(ai.time = date) if(ai.id = id) for(int j=i; jnum-1; j+) aj = aj+1; num-; cout删除成功!!n; break; return num;void Sche:xianshisuoyou(int num) cout时间和日期 标题 类型n; for(int i=0; inum; i+) ai.id = i+1; coutai.time,ai.start_time-ai.end_timesetw(8)ai.biaoti; if(ai.type = 1) coutsetw(8)Homeendl; e

17、lse if(ai.type = 2) coutsetw(8)Workendl; else if(ai.type = 3) coutsetw(8)Studyendl; else if(ai.type = 4) coutsetw(8)Playendl; void Sche:liebiaoxianshi(int num) struct tm t1 = 0 ; struct tm t2 = 0 ; time_t t = time(NULL); char ch64 = 0; strftime(ch,sizeof(ch)-1,%Y-%m-%d %H:%M:%S, localtime(&t); strin

18、g y = strtok(ch,-); string m = strtok(NULL,-); string d = strtok(NULL, ); /coutyendl; coutmendl; coutdendl; t1.tm_year = 1000*(y0-0) + 100*(y1-0) + 10*(y2-0) +y3-0-1900; t1.tm_mon = 10*(m0-0) + m1-0; t1.tm_mday = 10*(d0-0) + d1-0; int n,n1; coutn; coutn1; coutT时间和日期 标题 类型n; for(int i=0; inum; i+) ai

19、.id = i+1; char tt40; ai.time.copy(tt,10,0); *(tt+10) = 0; string d1 = strtok(tt,-); string m1 = strtok(NULL,-); string y1 = strtok(NULL, ); t2.tm_year = 1000*(y10-0) + 100*(y11-0) + 10*(y12-0) +y13-0-1900; t2.tm_mon = 10*(m10-0) + m11-0; t2.tm_mday = 10*(d10-0) + d11-0; double seconds = difftime(mk

20、time(&t2), mktime(&t1); if(seconds/86400 = n1 & ai.type = n) coutai.time,ai.start_time-ai.end_timesetw(8)ai.biaoti; if(ai.type = 1) coutsetw(8)Homeendl; else if(ai.type = 2) coutsetw(8)Workendl; else if(ai.type = 3) coutsetw(8)Studyendl; else if(ai.type = 4) coutsetw(8)Play1900) for(i=1900;i1) for(i

21、=1;imonth;i+) sum+=nmonth(i,year); return sum; /返回总共多少天;void Sche:rilixianshi(int num) string date; int i,j,year,month,day,sum,daycount,cases=1; coutdate) month = 10*(date0-0) + date1-0; year = 1000*(date3-0) + 100*(date4-0) + 10*(date5-0) +date6-0; sum=getDays(year,month); day=sum%7; /这里算出来这个月的一号前面需要几个空格;等于0的话,前面就不需要空格 daycount=nmonth(month,year);/算出这个月的天数 coutCase cases+: year年month月endl; coutSun Mon Tue Wed Thu Fri Satendl; for(i=0;i=day%7;i+) cout ;/ for(i=1,j=day+1;i=dayco

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1