c语言课程设计报告(日程表).pdf

上传人:深夜****等你... 文档编号:75949017 上传时间:2023-03-06 格式:PDF 页数:34 大小:1.62MB
返回 下载 相关 举报
c语言课程设计报告(日程表).pdf_第1页
第1页 / 共34页
c语言课程设计报告(日程表).pdf_第2页
第2页 / 共34页
点击查看更多>>
资源描述

《c语言课程设计报告(日程表).pdf》由会员分享,可在线阅读,更多相关《c语言课程设计报告(日程表).pdf(34页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、 上海应用技术学院 课 程 设 计 2012-2013 学年第二学期|设计题目:日程管理 、1.课程设计任务书 上海应用技术学院课程设计任务书 课程名称 程序设计语言课程设计/课程代码 B704010 设计题目 1 算术练习 2 个人收支管理 3 通讯录 4 成绩记录簿 5 图书借阅管理 6|7 日程表管理 题目序号 6 设计时间 2013 年 7 月 1 日2013 年 7 月 12 日 系(院)计算机与信息工程学院 专业#班级 一、课程设计任务(条件)、具体技术参数(指标)1.在指导书提供的课程设计题目中选择一题或自选(但需经过指导教师认可)2.每个题目限一人完成,题目选定后不可更换。3.

2、用户提供的主操作界面应该方便用户的操作。4.最后提交的课程设计成果包括:a)课程设计报告电子稿。c)源程序文件。d)可执行程序文件。二、对课程设计成果的要求(包括课程设计说明书、图纸、图表、实物等软硬件要求)1.分析课程设计题目的要求;2.写出详细设计说明;3.编写程序代码,调试程序使其能正确运行;4.设计完成的软件要便于操作和使用,有整齐、美观的使用界面;5./6.设计完成后提交课程设计报告和源代码文件的电子文档。三、课程设计工作进度计划:第一天 选择课程设计题目,分析课题的要求,确定设计方案;第二天 总体设计,模块划分 第三天绘制程序流程图;第四天 按功能模块编写详细设计说明;第五天 编写

3、程序代码 第六天 设计用户界面;第七天运行与调试程序;第八天写课程设计报告;第九天完成软件的设计准备答辩 第十天 提交课程设计报告;面试或答辩。四、主要参考资料 1谭浩强C 程序设计(第三版)北京:清华大学出版社,2005 2谭浩强C 程序设计题解与上机指导(第三版)北京:清华大学出版社,2005 3 Herbert SchildtC 语言大全(第四版)北京:电子工业出版社,2004 4Samuel ,Guy C 语言参考手册(第 5 版)北京:机械工业出版社,2003 5程序设计语言课程设计指导书 指导教师(签名):教研室主任(签名):2013 年 7 月 1 日 2013 年 7 月 12

4、 日 ,:?目录:1.课程设计任务书*2 2.目的及要求*6 2.1 课程设计目的 课程设计要求 3.课程设计内容说明*7 .程序功能介绍 程序设计整体设计说明 数据结构设计 程序结构设计 程序子程序及功能设计 函数主要调用关系图 各模块流程图 4.运行结果*17 5.,6.源程序代码分析*31 6.课程设计感悟*42 2.目的及要求【课程设计目的 本课程设计是计算机科学与技术专业重要的实践性环节之一,是在学生学习完程序设计语言课程后进行的一次全面的综合练习。本课程设计的目的和任务:1)巩固和加深学生对 C 语言课程的基本知识的理解和掌握;2)掌握 C 语言编程和程序调试的基本技能;3)利用

5、C 语言进行基本的软件设计;4)掌握书写程序设计说明文档的能力 5)提高运用 C 语言解决实际问题的能力。课程设计要求 1)?2)分析课程设计题目的要求;3)写出详细设计说明;4)编写程序代码,调试程序使其能正确运行;5)设计完成的软件要便于操作和使用,有整齐、美观的使用界面;6)设计完成后提交课程设计报告和源代码文件的电子文档。3.课程设计内容说明.程序功能介绍(本系统的主要功能是实现日程表的管理,有添加日程,删除日程,查询日程,显示日程,设置日程,修改日程,日程排序,读取日程,保存日程的功能。每个日程的信息包括:日程时间,日程名称,日程详情,日程提醒,日程标记。程序设计整体设计说明 本系统

6、的主函数是整个程序的核心,子函数之间也是有联系的,对日程的删除,查询,显示,修改,保存,必须是在添加了日程,或者读取了日程的情况下进行的。一些基本操作在子函数中多次重复使用,即可单独设定函数,多次调用即可。运行程序 开始后进入主菜单,用户即可选择选择要进行的操作,例如,1 为添加日程,用户需输入相应信息。选择 2 为删除日程,按照日期或者名称选中相应日程后,可以删除日程或者日程设置。等等功能。当选择不存在时提示用户选择错误并提示重新选择。题目要求 .设计要求 【基本功能:添加日程信息;删除日程信息;查询管理;设置管理;拓展功能:日程信息的修改;设置修改;;设置删除;创新(自拟)功能:程序实现的

7、其它功能由个人自拟。.设计要求具体说明 添加日程信息:需要输入日期、时间及相关的事件名称,并提示是否有时间冲突。删除日程信息:需要输入日期、时间后,显示相关的事件名称,由用户确认是否删除。】查询功能:a)查询提前提醒事件,即提示将要发生的日程信息;b)查询某天的日程信息。对已经过去和将要发生的事件要区别显示。设置功能:a)可以设置提前提醒的时间。b)日程信息需写入文件,文件的建立自我定义。c)输入的日期、时间要进行合理性检查。d)设置提前提醒的时间,并进行合理性检查。*拓展功能:a)能进行日程表信息的修改;b)设置信息的修改、删除。.提示:定义合适的结构体类型,使用链表或数组的方式组织数据。数

8、据结构设计】本系统包含的数据结构有:struct Date_time 行结果 1.点击运行,出现如下界面,可根据提示,选择菜单,进行相关操作;添加日程功能 2.选择菜单,输入 1,进入添加日程功能,第一步:提示输入日程的时间,第二步:提示输入日程的名称,第三步:提示输入日程的具体内容。第四步:进入设置界面,提示设置日程的提示时间。输入完成后回车,日程的添加功能就完成了。注意:在这个功能里,对于时间和日期的合法性都有检查,如果输入的时间有错误,那么就会自动提示输入的不正确,请重新输入。保存日程的功能 3.完成菜单一的添加日程功能后,按回车键返回主菜单,然后选择 6,进入保存日程的功能,选择 6

9、后,点击回车,界面提醒“保存成功”,这时日程的保存就完成了,日程就保存在了“我的日程.txt”,文本文档里了。我们就完成了对日程的写入保存功能。文件的读取功能 4.完成日程的保存写入功能之后,就会自动返回主菜单,选择 5,进入文件的读取功能,点击回车,屏幕上会显示已保存的日程的全部信息,包括日程日期,日程名称,详细信息,提醒时间;进入查询日程功能 5.完成读文件功能之后,点击回车,回到主菜单就可以选择其他功能进行操作,例如选择 3,进入查询日程功能,界面自动提醒:1.查询指定日程,2.退出操作,选择 1,查询指定日程,提示输入查询日程的名称。输入要查询的日程的名称后,关于这条日程的详细信息就会

10、显示。然后 选 择0,退 出 查 询 功 能,返 回 主 界 面。注意;如果输入的日程名称不正确,系统会自动提醒,查找的日程不存在。;修改功能 6.返回主菜单后选择 4,进入日程的修改功能,然后提示输入要修改的日程名称,输入名称,进入修改界面,1.修改日程时间,2.修改日程名称,3.修改日程详情,4.修改日程提醒时间,0.退出。选择要修改的内容,如选择 4 修改日程的提醒时间,回车后,输入新的提醒时间,回车,选择 0 完成,回车,返回主菜单,然后选择 6 保存日程,再选择 5,读取日程,界面就显示修改后的新日程的新信息了,这样的话,修改就成功了。删除功能 7.)8.完成修改功能后,回车进入主菜

11、单,选择 2,进入删除功能,输入要删除的日程名称,回车进入删除界面,选择 1,确认删除,删除后,界面显示删除成功。并返回主菜单。选择 6,保存删除,选择5,读 取 日 程,就 看 不 到 刚 刚 删 除 的 那 条 日 程 信 息 了。5.源程序代码:#include#include ame,RC_name);strcpy(*p).detail,RC_detail);)(*p).=;=;(*p).=;(*p).=;(*p).=;printf(添加日程设置n);除n);scanf(%d,&sure);getchar();if(sure=1)?if(p_s=head&p_s!=NULL)head=

12、p_s-next;else if(p_s!=NULL)p_l-next=p_s-next;printf(删除成功n);【struct richeng*select_program()ame);printf(*日程时间:%-4d-%-2d-%-2d%-d:%-2dn,(*p).,(*p).,(*p).,(*p).,(*p).;printf(*日程详情:%sn,p-detail);printf(*提醒时间:%-4d-%-2d-%-2d%-d:%-2dn,(*p).,(*p).,(*p).,(*p).,(*p).);printf(n);void search()询指定日程n);printf(0.退出

13、操作:n);scanf(%d,&X);getchar();switch(X)case 0:break;case 1:printf(请输入事件名称:);scanf(%s,RC_name);getchar();search_zhiding_richeng(RC_name);break;default:printf(n 选择错误!nn);:while(X!=0);void search_zhiding_richeng(char name50)ame,name)=0)p_event=p;show(p);.p=(*p).next;改日程时间n);printf(2.修改日程名称n);printf(3.修改

14、日程详情n);printf(4.修改日程提醒n);printf(0.完成n);scanf(%d,&s);getchar();switch(s)case 0:break;case 1:=;(*p).=;(*p).=;】(*p).=;(*p).=;break;case 2:ame,RC_name);break;case 3:etail,RC_detail);break;case 4:=;¥(*p).=;(*p).=;(*p).=;(*p).=;break;default:printf(n 菜单选择错误!请重新选择!n);while(s!=0);void read()struct richeng*p

15、;FILE*fp;fp=fopen(我的日程.txt,rb);,if(fp=NULL)printf(n 文件无法打开!n);exit(0);head=NULL;printf(n*读取信息如下*nn);while(!feof(fp)ext=p;p0=p;fclose(fp);printf(n-按回车键返回-n);getchar();void write()|struct richeng*p,*p1;FILE*fp;p=p1=head;fp=fopen(我的日程.txt,wb);if(fp=NULL)printf(n 文件无法打开!n);return;while(p!=NULL)if(fwrite

16、(p,A,1,fp)!=1)ext;fclose(fp);printf(n*保存成功*n);6.课程设计感悟:两周的课程设计转眼间就结束了,回顾这两周的课程设计,对我的帮助是很大的,在做课设以前,我们虽然在学习的过程中也做实验,但偏重的还是课本上的知识,但通过这两周的课程设计,主要培养我们的实践动手能力,从第一天的分析题目,到第二天和第三天的画程序流程图,再到编写程序,我学会了在做大的编程的时候一定要有条理,画流程图是很有必要的,在编写程序之前,通过画流程图,我们可以清楚明白的知道这个程序应该怎么写,不至于到编程的时候脑子里一团糟,自己心里没有一条明确的主线路。第二点就是,在编写大的程序的时候

17、,从主函数开始,一步一步的编写,用到哪个函数,就编写那个函数,一步一步的调试,不要到最后都编写完了再调试,那样的话就会很乱,不能明确的找出错误之处。在这两周里,我也发现了自己的一些不足之处,一些在学习的时候没有学精通的地方,比如说文件读写操作等内容,但通过和同学老师的交流,自己查阅资料,已经攻克了这个难题。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,通过实际编程动手操作,理解书本上的知识,才是真正的知识,才能提高自己的实际动手能力和独立思考的能力。参考文献(另起一页)1.谭浩强.C 程序设计(第四版).北京:清华大学出版社,2010 2.谭浩强.C 程序设计题解与上机指导(第四版).北京:清华大学出版社,2010

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁