课程设计
- 格式:doc
- 大小:271.00 KB
- 文档页数:20
课程设计与教案8篇(实用版)编制人:__________________审核人:__________________审批人:__________________编制单位:__________________编制时间:____年____月____日序言下载提示:该文档是本店铺精心编制而成的,希望大家下载后,能够帮助大家解决实际问题。
文档下载后可定制修改,请根据实际需要进行调整和使用,谢谢!并且,本店铺为大家提供各种类型的实用资料,如工作总结、工作报告、工作计划、心得体会、讲话致辞、教育教学、书信文档、述职报告、作文大全、其他资料等等,想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by this editor.I hope that after you download it, it can help you solve practical problems. The document can be customized and modified after downloading, please adjust and use it according to actual needs, thank you!Moreover, our store provides various types of practical materials for everyone, such as work summaries, work reports, work plans, reflections, speeches, education and teaching, letter documents, job reports, essay summaries, and other materials. If you want to learn about different data formats and writing methods, please stay tuned!课程设计与教案8篇一份优秀的教案,在接下来的教学工作中起着很大的作用,写教案是为了让我们在教学工作中有更好的表现,本店铺今天就为您带来了课程设计与教案8篇,相信一定会对你有所帮助。
教学课程设计内容包括哪些一、课程目标知识目标:1. 让学生掌握课程相关的核心概念和知识点,如XXX(具体知识点),并能够准确理解和运用。
2. 通过对课程内容的深入学习,使学生能够掌握学科的基本原理和规律,形成系统的知识结构。
技能目标:1. 培养学生运用所学的知识点解决实际问题的能力,如XXX(举例)。
2. 提高学生的分析、思考、创新和合作能力,使其能够运用所学知识进行探究性学习。
情感态度价值观目标:1. 激发学生对学科的兴趣和热情,培养其积极主动学习的态度。
2. 引导学生树立正确的价值观,使其在学习过程中认识到知识对社会和个人的重要性。
3. 培养学生的团队协作精神,使其在合作中学会尊重、理解和关爱他人。
课程性质:本课程注重理论与实践相结合,以培养学生的学科素养为核心,强调知识的应用与实践能力的提升。
学生特点:考虑到学生所在年级的特点,课程内容设计将兼顾学生的认知发展水平和兴趣,注重激发学生的主动性和创造性。
教学要求:1. 教师应充分准备教学资源,确保课程内容的科学性和实用性。
2. 教学过程中要注重启发式教学,引导学生主动探究和思考。
3. 教师要关注学生的学习反馈,及时调整教学策略,提高教学效果。
二、教学内容根据课程目标,本章节教学内容主要包括以下几部分:1. 知识点讲解:- 引导学生掌握课本第X章的基本概念和原理,如XXX(具体知识点)。
- 通过实例分析,讲解知识点在实际问题中的应用,如XXX(举例)。
2. 实践操作:- 安排学生进行实验或实践活动,培养学生的动手能力和实践技能。
- 结合课本第X章的内容,设计相关实验项目,让学生在实践中加深对知识点的理解。
3. 案例分析:- 选择与课程相关的典型案例,让学生运用所学知识进行分析和讨论。
- 通过案例分析,培养学生的问题解决能力和创新思维。
4. 合作探究:- 组织学生进行小组合作,共同探讨课程相关话题。
- 引导学生通过查阅资料、讨论交流等方式,深入挖掘学科内涵。
课程设计教学设计10篇教学设计方案篇一教学目标:1、认识1个生字,会写3个生字。
2、正确流利有感情地朗读课文,能用自己的语言讲述课文。
3、理解课文寓意,明白无论做什么事都必须先把方向搞正确,知道要听从朋友的提醒和忠告。
教学重难点:1、正确流利有感情地朗读课文,能用自己的语言讲述课文。
2、理解课文寓意,明白无论做什么事都必须先把方向搞正确,目的和行动要一致。
知道要听从朋友的提醒和忠告。
教学过程:一、导入看大家坐的这么端正,那在上课前我们先来玩一个游戏,看图猜寓言,男女生比赛。
出示图片(画蛇添足、盲人摸象、狐假虎威、揠苗助长、亡羊补牢)引出课题《南辕北辙》。
跟老师一起板书课题。
二、自读课文1、什么是寓言?(小故事大道理)2、仔细观察“辕”和“辙”这两个字,你发现了什么?(都有车子旁,肯定与车有关。
)3、解释字面意思。
(南辕北辙:车子要像南走,车轮反而北行。
)4、南,目的;北,行动三、再读课文思考:《南辕北辙》讲了一个怎样的故事?用文中的一句话概括。
出示第10段第一句,“硬”字也是我们要学的生字,仔细观察这个字,石字旁,石头硬不硬,可比石头更硬的就是这个固执的人了!是啊,多傻,多固执啊。
他硬要往北的原因是什么呢?马跑的快?车夫是个好把式?带的盘缠多(把不懂的词标上问号)4、那个人连续说了三个没关系,课件他有多固执啊,如果这人是你朋友,你要对他说什么?(即使……也?尽管……但?无论……都)四、归纳总结大家对他的劝告,他不予理睬,最终导致的结果(出示最后一段)。
这则寓言告诉我们目的和行动要一致,才能取得成功。
五、拓展交流1、生活中有什么事是一定要避免“南辕北辙”?2、小故事大道理,带来视频(魏国大臣季梁劝阻魏王攻打赵国的念头)3、出自于这本书《战国策》4、在以后的生活中,我们应该避免南辕北辙这种错误,不管做什么目的和行动要一致。
教学设计方案篇二活动目标1、认识1和许多,了解他们的关系。
2、学习滚接大皮球。
课程设计设计内容怎么写一、教学目标本章节的教学目标分为三个部分:知识目标、技能目标和情感态度价值观目标。
1.知识目标:学生能够掌握课本中的基本概念、原理和方法,理解本章节的核心内容。
2.技能目标:学生能够运用所学知识解决实际问题,提高分析问题和解决问题的能力。
3.情感态度价值观目标:学生能够培养对学科的兴趣和热情,树立正确的价值观,认识到学科在现实生活中的重要性。
二、教学内容根据课程目标,本章节的教学内容主要包括以下几个部分:1.教材的基本概念、原理和方法的介绍。
2.重点知识的讲解和分析。
3.实际案例的讨论和分析。
4.知识点之间的联系和应用。
5.学科在现实生活中的应用。
三、教学方法为了达到本章节的教学目标,我们将采用以下几种教学方法:1.讲授法:用于介绍基本概念、原理和方法。
2.讨论法:用于重点知识的讲解和分析,引导学生主动参与讨论。
3.案例分析法:用于实际案例的讨论和分析,培养学生解决问题的能力。
4.实验法:用于验证知识点,增强学生的实践操作能力。
四、教学资源为了支持本章节的教学内容和教学方法的实施,我们将准备以下教学资源:1.教材:提供基础知识,作为教学的主要依据。
2.参考书:提供更多的学习资料,帮助学生深入理解知识点。
3.多媒体资料:包括PPT、视频等,用于辅助讲解和展示知识点。
4.实验设备:用于实验环节,让学生亲身体验和验证知识点。
五、教学评估本章节的教学评估将采用多种方式,以全面、客观、公正地评价学生的学习成果。
1.平时表现:包括课堂参与度、提问回答、小组讨论等,以考察学生的学习态度和积极性。
2.作业:布置与章节内容相关的作业,评估学生的理解和应用能力。
3.考试:设计全面的考试,涵盖知识点的理解和应用,以评估学生的综合能力。
评估方式将根据学生的实际情况和课程要求进行调整,确保评估结果准确反映学生的学习成果。
六、教学安排本章节的教学安排将考虑学生的实际情况和需求,确保教学进度合理、紧凑。
教学课程设计优秀9篇教学活动课程设计方案篇一【设计理念】1、语文课程的工具性要求阅读教学必须抓住“学习语言”这一根本。
只有抓住“语言”这一本体,才能让新课标的先进理念得以充分落实。
2、语文课程的人文性要求教学要构筑学生的精神家园。
学生的精神家园是在语言的学习中得以构筑的。
从学生对语言材料的接受过程来看,它需要这样一个复杂的过程:接触语言符号→形成物象→提升意象→构筑思想。
因此,本教学设计试图在逐层深入学习语言的基础上,构筑学生的精神世界。
【教学过程】一、创设情境,走进白杨世界1、播放课件:课件的背景音乐为歌曲《小白杨》,画面为茫茫大戈壁及傲然挺立的白杨树。
2、学生看完课件后交流感受:⑴你们看到了什么?⑴看完后有什么感受?3、作家袁鹰曾抑制不住自己的激情,写下了《白杨》这篇课文,我们想不想跟随作家袁鹰,走进白杨树坚强而又美丽的世界?师板书课题,学生书空:白杨(设计意图:情境的创设,在于酝酿学生学习的心理场,激发学生走进白杨的欲望和兴趣,为整节课的学习张本。
)二、初读课文,感知白杨形象1、用自己喜欢的方式自由朗读。
提出以下要求:⑴把课文读正确,读通顺;⑴联系上下文或利用工具书自学生字新词;⑴思考课文主要讲述了一件什么事情?2、检查自学情况:⑴生字新词的检查,重点放在是用什么方法学懂的。
⑴先指名几个同学说说写了一件什么事。
再进行归纳:爸爸和他的孩子们在去新疆的列车上谈论白杨的事。
(设计意图:整体把握课文,为下一步解读白杨物象铺垫。
避免学生“只见树木,不见森林”的狭隘阅读。
)三、解读物象,勾画白杨轮廓1、勾画白杨生长环境——大戈壁的轮廓师:请同学们拿起笔,找出描写大戈壁的句子,并圈出重点词语。
学生自读自划──全班汇报交流。
句子一:车窗外是茫茫的大戈壁,没有山,没有水,也没有人烟。
句子二:天和地的界限并不那么清晰,都是浑黄一体。
重点词语:茫茫;没有──没有──也没有──;浑黄一体。
2、勾画白杨的轮廓:师:请同学们用同样的方法找出描写白杨树外形特点的句子,并圈出重点词语。
课程设计报告范文一、课程设计的背景和目标本次课程设计是在课程名称课程的基础上进行的,旨在通过实际项目的实践,让我们更深入地理解和应用所学的理论知识,提高我们的实践能力和解决问题的能力。
课程设计的目标主要包括以下几个方面:1、加深对课程相关的核心概念或技术的理解和掌握。
2、培养我们的系统设计和开发能力,能够从需求分析到系统实现的全过程进行规划和实施。
3、提高我们的团队协作和沟通能力,学会在团队中发挥自己的优势,共同完成任务。
4、培养我们的创新思维和独立思考能力,能够在设计过程中提出新颖的解决方案。
二、课程设计的任务和要求(一)任务描述我们的课程设计任务是开发一个具体的系统名称系统,该系统需要具备列举系统的主要功能和特点等功能。
(二)要求1、系统的功能要完整,能够满足设计任务书中提出的各项需求。
2、系统的界面要简洁美观,操作方便,具有良好的用户体验。
3、系统的代码要规范、清晰,具有良好的可读性和可维护性。
4、课程设计报告要详细、准确,能够清晰地阐述系统的设计思路、实现过程和测试结果。
三、课程设计的方案选择和设计(一)方案选择在课程设计的初期,我们对系统的实现方案进行了充分的调研和讨论。
经过比较和分析,最终选择了具体的方案名称方案,主要基于以下考虑:1、该方案能够很好地满足系统的功能需求,具有较高的可行性和可扩展性。
2、我们对该方案所涉及的技术和工具比较熟悉,能够降低开发的难度和风险。
3、相关的技术资料和开源代码比较丰富,便于我们学习和参考。
(二)系统设计1、系统架构设计系统采用了具体的架构模式,如 B/S 架构、C/S 架构等架构,分为列举系统的主要模块,如前端模块、后端模块、数据库模块等等模块。
各模块之间通过描述模块之间的通信方式和接口进行通信和协作。
2、数据库设计根据系统的功能需求,设计了合理的数据库结构。
数据库中包含了列举主要的数据库表和字段等表,通过描述表之间的关联关系建立了表之间的关联。
3、界面设计系统的界面设计遵循了简洁美观、操作方便的原则。
课程设计的定义名词解释课程设计是教育领域中一个重要的概念,它是指教育工作者为了实现教学目标,按照一定的教学理念和方法,制定和安排学习活动的过程。
课程设计涉及到课程的内容、目标、教学资源和评价等方面,是教育教学中的核心环节。
本文将探讨课程设计的定义和其在现代教育中的作用。
一、课程设计的定义课程设计是指教育工作者根据教学目标、学生水平、学科特点和教学环境等因素,有意识地组织教学活动的过程。
在课程设计中,教师根据自己的教学理念,确定学习活动的内容、目标、教学资源以及评价方式。
课程设计从宏观上看,是为了整个课程的规划和安排;从微观上看,是为了单个教学活动的设计。
课程设计可以包括不同层次和不同范围的内容,根据实际情况进行调整和修改。
二、课程设计的要素课程设计的要素包括教学目标、教学内容、教学资源和评价方法。
教学目标是教师设定的对学生在知识、能力和态度等方面有所要求的期望,是课程设计的基础。
教学内容包括教材内容和教师自行添加的相关内容,为学生提供学习的素材和知识点。
教学资源包括教学设备、教学软件、教具和教师的知识、技能和经验等。
评价方法是对学生学习效果和教学质量进行评价的方式和工具,包括考试、作业、项目等。
综合运用这些要素,课程设计可以促进学生的学习和发展。
三、课程设计的作用课程设计在教育领域中起着重要的作用。
首先,课程设计可以帮助教师明确教学目标,合理安排教学内容和学习活动,确保教学的针对性、连贯性和有效性。
其次,课程设计可以激发学生的学习兴趣和主动性,促进他们对知识的理解和运用能力的提升。
通过课程设计,学生可以在实践中获得知识,培养解决问题和创新思维的能力。
另外,课程设计还可以帮助教师适应不同学生的学习特点和需求,为他们提供个性化和差异化的教学服务。
四、课程设计的实施步骤课程设计的实施步骤可以根据具体情况进行调整,但一般包括以下几个步骤:确定教学目标;分析学生特点和学科特点;选择教材和教学资源;设计学习活动和教学方法;制定评价方式和评价标准。
课程设计方案课程设计方案(15篇)为了确保事情或工作得以顺利进行,往往需要预先制定好方案,方案的内容和形式都要围绕着主题来展开,最终达到预期的效果和意义。
写方案需要注意哪些格式呢?下面是小编整理的课程设计方案,欢迎阅读与收藏。
课程设计方案1教学设计指导思想:本课件运用多媒体技术,综合利用图片和视频资料,结合课堂师生互动的及课堂讨论等多种方式,引导大学生主动求知,积极思考,进入哲学的思维,使原理课的教学能够有一个好的效果。
一、教学目标1、知识方面:(1)理解和掌握联系的含义;(2)理解事物的联系是普遍的;(3)理解事物的联系是客观的。
2、能力方面:引导学生学会归纳基本概念、基本原理,并初步掌握用联系的观点去观察、分析社会现实问题,以培养学生的分析运用等辩证思维能力。
二、教学方法:多媒体课件、案例讨论和师生互动相结合。
三、课堂设计:1、运用达尔文《物种起源中》关于“猫和三叶草”的案例,引入本课件的教学。
在社会中,借用最近热映的《同桌的你》电影中主人公提到的著名的.“六度分割理论”以及“蝴蝶效应”,让同学们讨论人类社会中普遍联系的生存状态:世界上任何事物都不能孤立存在,都同周围的其它事物联系着。
以恩格斯在《反杜林论》中的著名论断作为本阶段课堂讨论的结束语。
2、以孔子“三人行,必有我师”为导引,引入哲学上对“联系”范畴做出的定义。
3、以对联系范畴的理解引入联系客观性的特点。
引入古人对“日食”现象的理解并结合生活中自己的例子加以详解,让同学们举出生活中主观臆造的联系的例子,并展开讨论。
“喜鹊报喜”、“乌鸦报丧”;幸运数字等等。
得出结论,联系是客观的,不能主观臆造的,恋爱中的情侣切忌捕风捉影,主观臆断。
4、由此引入联系的普遍性的特点。
播放视频《十分钟看懂金融危机》,从经济全球化的角度,论证人类社会生活中人们相互依存的紧密度和普遍性。
5、普遍存在的事物之间的偏西是多种多样的,引入联系的多样性的特点,并举例加以论证。
课程设计报告课程设计报告书(优秀7篇)(经典版)编制人:__________________审核人:__________________审批人:__________________编制单位:__________________编制时间:____年____月____日序言下载提示:该文档是本店铺精心编制而成的,希望大家下载后,能够帮助大家解决实际问题。
文档下载后可定制修改,请根据实际需要进行调整和使用,谢谢!并且,本店铺为大家提供各种类型的经典范文,如合同协议、条据文书、策划方案、总结报告、党团资料、读书笔记、读后感、作文大全、教案资料、其他范文等等,想了解不同范文格式和写法,敬请关注!Download tips: This document is carefully compiled by this editor. I hope that after you download it, it can help you solve practical problems. The document can be customized and modified after downloading, please adjust and use it according to actual needs, thank you!Moreover, our store provides various types of classic sample essays, such as contract agreements, documentary evidence, planning plans, summary reports, party and youth organization materials, reading notes, post reading reflections, essay encyclopedias, lesson plan materials, other sample essays, etc. If you want to learn about different formats and writing methods of sample essays, please stay tuned!课程设计报告课程设计报告书(优秀7篇)在不断进步的时代,需要使用报告的情况越来越多,报告中提到的所有信息应该是准确无误的。
课程设计怎么写范文一、教学目标本章节的教学目标是使学生掌握XX学科的基本概念、基本原理和基本方法,能够运用所学知识解决实际问题;提高学生的XX技能,如观察、思考、分析和解决问题的能力;培养学生的科学态度和严谨的思维方式,使其具备创新意识和团队协作精神。
具体来说,知识目标包括:1.掌握XX学科的基本概念和基本原理。
2.了解XX学科的发展趋势和应用领域。
3.学会使用XX学科的相关工具和技术。
技能目标包括:1.能够运用所学知识解决实际问题。
2.具备观察、思考、分析和解决问题的能力。
3.能够运用XX学科的方法进行研究和创新。
情感态度价值观目标包括:1.培养学生的科学态度和严谨的思维方式。
2.增强学生的创新意识和团队协作精神。
3.使学生认识到XX学科在生活和未来发展中的重要性。
二、教学内容根据课程目标,本章节的教学内容主要包括以下几个方面:1.XX学科的基本概念和基本原理:通过讲解和案例分析,使学生了解并掌握XX学科的基本概念和基本原理。
2.XX学科的发展趋势和应用领域:介绍XX学科近年来的发展情况和未来发展趋势,以及其在各个领域的应用。
3.XX学科的相关工具和技术:教授并实践XX学科的相关工具和技术,使学生能够熟练运用。
4.实际问题解决:通过案例分析和小组讨论,培养学生运用所学知识解决实际问题的能力。
5.研究和创新:引导学生进行小研究,培养学生的创新意识和团队协作精神。
三、教学方法为了达到本章节的教学目标,将采用以下几种教学方法:1.讲授法:通过讲解,使学生掌握XX学科的基本概念和基本原理。
2.案例分析法:通过分析实际案例,使学生了解XX学科在实际问题中的应用。
3.小组讨论法:通过小组讨论,培养学生的团队协作能力和创新意识。
4.实验法:通过实践操作,使学生掌握XX学科的相关工具和技术。
四、教学资源为了支持本章节的教学内容和教学方法的实施,将准备以下教学资源:1.教材:选用权威、实用的教材,为学生提供系统的学习资料。
课程设计课程名称: Java程序设计题目:万年历年级/专业/班:10计本二班学生姓名: 韦锌栩学号: 2010305215 指导老师:刘振东开始时间:2012年12月5日结束时间:2012年12月24日前言Java是由Sun Microsystems公司于1995年5月推出的Java面向对象程序设计语言(以下简称Java语言)和Java平台的总称。
由James Gosling 和同事们共同研发,并在1995年正式推出。
用Java实现的HotJava浏览器(支持Java applet)显示了Java的魅力:跨平台、动态的Web、Internet计算。
从此,Java[1]被广泛接受并推动了Web的迅速发展,常用的浏览器现在均支持Java applet。
另一方面,Java 技术也不断更新。
(2010年Oracle公司收购了SUN)由四方面组成:Java编程语言、Java类文件格式、Java虚拟机和Java应用程序接口(Java API)。
Java平台由Java虚拟机(Java Virtual Machine,简称JVM)和Java 应用编程接口(Application Programming Interface,简称API)构成。
Java 应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。
在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行。
现在Java 平台已经嵌入了几乎所有的操作系统。
这样Java程序可以只编译一次,就可以在各种系统中运行。
Java应用编程接口已经从1.1x版发展到1.2版。
目前常用的Java平台基于Java1.4,最近版本为Java1.7。
Java分为三个体系J2SE(Java2 Platform Standard Edition,java平台标准版),J2EE(Java 2 Platform,Enterprise Edition,java平台企业版),J2ME(Java 2 Platform Micro Edition,java平台微型版)。
与传统程序不同,Sun 公司在推出Java 之际就将其作为一种开放的技术。
全球数以万计的Java 开发公司被要求所设计的Java 软件必须相互兼容。
“Java 语言靠群体的力量而非公司的力量”是Sun 公司的口号之一,并获得了广大软件开发商的认同。
这与微软公司所倡导的注重精英和封闭式的模式完全不同。
Sun 公司对Java 编程语言的解释是:Java 编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言。
Java 平台是基于Java 语言的平台。
这样的平台目前非常流行。
因此微软公司推出了与之竞争的.NET平台以及模仿Java 的C#语言。
目录一摘要 (4)二需求分析 (5)三概要设计 (6)四程序运行界面解析 (6)源程序附录一摘要Java是一种简单的,面向对象的,分布式的,解释型的,健壮安全的,结构中立的,可移植的,性能优异、多线程的动态语言。
该报告中的程序是使用JAVA程序编写的,使用图形用户界面;实现日期与星期的查询。
关键字:万年历程序;JAVA语言;EclipseJava is a simple, object-oriented, distributed, interpreted, robust, secure structure of neutral, portable, high performance, multi-threaded dynamic language. The report, the program is using the JAVA programming, using the graphical user interface; queries the date and day of the week.Keywords: calendar program;JA V A language; Eclipse二需求分析对于万年历系统,其主要功能是:查看当日日期(年、月、日)、查看当时时间、查看其他年月的月历、对选中的日期进行标识。
主要使用流程是:查看万年历系统,查看其他月份或年份日历,选中其他日期查看,查看当日日期。
主要功能的用例描述如下:(1)查看万年历1、进入万年历程序;2、系统获取当日日期并设置日历为当月,蓝框选中当日日期;(2)查询当月其他年份改变年份有两张方法,一种是输入年份,一种是摁按键选择上一年或下一年。
1、点击选择年份的菜单,输入年份;2、系统获取已选择的年份;3、系统设置为已选年份当月的月历并显示在界面显示。
摁按键选择上一年(或下一年):1、点击选择“年—”(或“年+”)的按键;2、系统获取选择框内的年份;3、将系统获取年份的数字减去1(或加上1);4、将选择框内的年份设为已更改的年份;5、系统设置为已更改年份当月的月历并显示在界面显示。
(3)查看当年其他月份摁按键选择上一月(或下一月):1、点击选择“月—”(或“月+”)的按键,;2、系统获取选择框内的月份;3、将系统获取月份的数字减去1(或加上1);4、将选择框内的月份设为已更改的月份;5、系统设置为已更改月份当年的月历并在界面显示。
(4)选择其他日期查看1、点击其他日期;2、系统对所有日期的label进行监听,判断点击的那个label;3、返回被点击的label的数组下标;4、对该下标的label设置蓝色边框,表示选中。
(5)查看当前日期1、查看程序左下角;(6)日期记事本1、界面左边为日期记事本,可以写下当天的事情;2、记事本可保存、删除日志。
三概要设计1、总天数的算法 首先用if语句判断定义年到输入年之间每一年是否为闰年,若是闰年,则该年的总天数为366,否则为365。
然后判断输入的年是否为定义年,若是,令总天数S=1,否则,用累加法计算出定义年到输入年之间的总天数,再把输入年的一月到要输出的月份之间的天数累加起来,若该月是闰年中的月份并且该月还大于二月,再使总天数加1,否则,不加,既算出从定义年一月一日到输出年的该月一日的总天数。
2、输出月份第一天为星期几的算法:使总天数除以7取余加2得几既为星期几,若是7,则为星期日。
3、算出输出月份第一天为星期几的算法:算出输出月份第一天为星期几后,把该日期以前的位置用空格补上,并总该日起一次输出天数直到月底,该月中的天数加上该月一日为星期几的数字再除以7得0换行,即可完整的输出该月的日历。
4、如果年份小于1000年则程序不予判断四程序运行界面解析1、程序运行后总界面程序运行后的用户界面!2、输入年份界面从键盘输入年份,选择用户所要查询的年份!也可以点击按钮“上一年”和“下一年”来选定用户所要查询的年份!年份需要在999年以上才能查询!3、点击上下月份界面查询月份,可以点击上月个下月两个按钮,查询用户所要查询的月份!4、点击上下年份界面点击按钮“上一年”和“下一年”查询年份!5、选择日期的界面选定日期,其颜色会改变!也在用户界面的右上角显示用户所选定的日期!6、写下日记的界面写日记,可以写下当天的日记,点击保存,可以生成TXT文件保存在计算机中!7、删除日记的界面删除日记,把以前的所写下的日记删除!8、修改系统日期界面修改日期,可以写上用户所喜欢的类型的文字和符号!五设计体会对于本程序的设计,首先必须要考虑的问题是,该怎么来实现这个时间与星期算法的正确性,最后觉得调用电脑上的时间是个不错的选择,然后再思考要实现哪些功能,虽然前面我也自己编了一个万年历的程序,可是功能并不强大,也没有用图形用户界面来显示,这个也是我第一次经过很长时间的反复调试与修改,查阅了课本和网上的大量相关资料,终于完成了这个课程设计。
但是在过程中,把课本上的知识在复习了一遍的同时,也发现了自己在独自编写代码中有很多的不足,首先就是不能灵活的运用所学过的知识点,没有很强的融会贯通的能力,其次就是对java语言整体知识框架不是很熟悉。
同时我也借此将自己与网上一些人编写的万年历有了一定的对比,看到了别人功能的强大与自己的很多不足,并且也明白了java这门语言给我们的作用,但是在学习java过程中自己还需要很大的努力。
参考文献:丁振凡 Java语言实用教程北京:北京邮电大学出版社 2010.6朱福喜 Java语言习题与解析北京:清华大学出版社 2006.3宛延闿等实用Java程序设计教程北京:机械工业出版社 2006.1源程序附录:import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.MouseEvent;import java.awt.event.MouseListener;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;//import java.sql.Date;import java.text.DateFormat;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;import javax.swing.JButton;import javax.swing.JDialog;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JScrollPane;import javax.swing.JTable;import javax.swing.JTextArea;import javax.swing.JTextField;import javax.swing.table.DefaultTableModel;public class Rili extends JFrame implements ActionListener, MouseListener{private Calendar cld = Calendar.getInstance();private String [] astr = {"星期一", "星期二", "星期三", "星期四", "星期五", "星期六", "星期日"};private DefaultTableModel dtm = new DefaultTableModel(null,astr);private JTable table = new JTable(dtm); //装日期的表格private JScrollPane sp = new JScrollPane(table);private JButton bLastYear = new JButton("上一年");private JButton bNextYear = new JButton("下一年");private JButton bLastMonth = new JButton("上月");private JButton bNextMonth = new JButton("下月");private JTextField jtfYear = new JTextField(5);//jtfYear年份显示和输入文本框private JTextField jtfMonth = new JTextField(2);//jtfMonth月份显示文本框private JPanel p1 = new JPanel(); //装入控制日期按钮的模块private JPanel p2 = new JPanel();private JPanel p3 = new JPanel(new BorderLayout());private JPanel p4 = new JPanel(new GridLayout(2,1));private JPanel p5 = new JPanel(new BorderLayout());private JButton bAdd = new JButton("保存日志");private JButton bDel = new JButton("删除日志");private JTextArea jta = new JTextArea(); //jta--JTextAreaprivate JScrollPane jsp = new JScrollPane(jta);private JLabel l = new JLabel("***********************2010305215 韦锌栩制作*************************");private JLabel lt = new JLabel();private JLabel ld = new JLabel();private int lastTime;public Rili(){super("万年历"); //框架命名this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//窗口关闭函数this.getContentPane().setLayout(new BorderLayout(10, 0));jta.setLineWrap(true);table.setGridColor(Color.RED); //星期之间的网格线是灰色的table.setColumnSelectionAllowed(true);table.setSelectionBackground(Color.BLACK);//当选定某一天时这一天背景黑色table.setSelectionForeground(Color.GREEN);//选定的日期字体是绿色的table.setBackground(new Color(184,207,229));//日期显示表格颜色浅蓝色table.setFont(new Font("黑体",Font.BOLD,24));//日期数字字体格式table.setRowHeight(30);//表格的高度table.addMouseListener(this); //鼠标监听器jtfYear.addActionListener(this);//可输入年份的文本框//为各个按钮添加监听函数bAdd.addActionListener(this);bDel.addActionListener(this);bLastYear.addActionListener(this);bNextYear.addActionListener(this);bLastMonth.addActionListener(this);bNextMonth.addActionListener(this);//将按钮添加到Jpanel上p1.add(bLastYear);p1.add(jtfYear);//年份输入文本框p1.add(bNextYear);p1.add(bLastMonth);p1.add(jtfMonth);p1.add(bNextMonth);p2.add(bAdd);p2.add(bDel);p3.add(jsp, BorderLayout.CENTER); //JSP????????p3.add(p2, BorderLayout.SOUTH);p3.add(ld, BorderLayout.NORTH);p4.add(l);p4.add(lt);p5.add(p4, BorderLayout.SOUTH);p5.add(sp, BorderLayout.CENTER);p5.add(p1, BorderLayout.NORTH);this.getContentPane().add(p5, BorderLayout.CENTER);this.getContentPane().add(p3, BorderLayout.EAST);String [] strDate = DateFormat.getDateInstance().format(new Date()).split("-");//获得日期cld.set(Integer.parseInt(strDate[0]), Integer.parseInt(strDate[1])-1, 0);showCalendar(Integer.parseInt(strDate[0]), Integer.parseInt(strDate[1]), cld);jtfMonth.setEditable(false);//设置月份的文本框为不可编辑jtfYear.setText(strDate[0]);jtfMonth.setText(strDate[1]);this.showTextArea(strDate[2]);ld.setFont(new Font("新宋体",Font.BOLD,24));new Timer(lt).start();this.setBounds(200,200,600,320);this.setResizable(false);this.setVisible(true);}public void showCalendar(int localYear, int localMonth, Calendar cld){int Days = getDaysOfMonth(localYear, localMonth) + cld.get(Calendar.DAY_OF_WEEK) - 2;Object [] ai = new Object[7];lastTime = 0;for (int i = cld.get(Calendar.DAY_OF_WEEK)-1; i <= Days; i++){ai[i%7] = String.valueOf(i-(cld.get(Calendar.DAY_OF_WEEK)-2));if (i%7 == 6){dtm.addRow(ai);ai = new Object[7];lastTime++;}}dtm.addRow(ai);}public int getDaysOfMonth(int year, int Month) //显示所选月份的天数{if(Month == 1 || Month == 3 || Month == 5 || Month == 7 || Month == 8 || Month == 10 || Month == 12){return 31;}if(Month == 4 || Month == 6 || Month == 9 || Month == 11){return 30;}if(year%4 == 0 && year%100 != 0 || year%400 == 0)//闰年{return 29;}else{return 28;}}public void actionPerformed(ActionEvent e){if(e.getSource() == jtfYear || e.getSource() == bLastYear || e.getSource() == bNextYear ||e.getSource() == bLastMonth || e.getSource() == bNextMonth){int m, y;try//控制输入的年份正确,异常控制{if (jtfYear.getText().length() != 4){throw new NumberFormatException();}y = Integer.parseInt(jtfYear.getText());m = Integer.parseInt(jtfMonth.getText());}catch (NumberFormatException ex){JOptionPane.showMessageDialog(this, "请输入4位0-9的数字!", "年份有误", JOptionPane.ERROR_MESSAGE);return;}ld.setText("没有选择日期");for (int i = 0; i < lastTime+1; i++){ dtm.removeRow(0);}if(e.getSource() == bLastYear){ jtfYear.setText(String.valueOf(--y)); }if(e.getSource() == bNextYear){jtfYear.setText(String.valueOf(++y)); }if(e.getSource() == bLastMonth){if(m == 1){jtfYear.setText(String.valueOf(--y));m = 12;jtfMonth.setText(String.valueOf(m));}else{jtfMonth.setText(String.valueOf(--m));}}if(e.getSource() == bNextMonth){if(m == 12){jtfYear.setText(String.valueOf(++y));m = 1;jtfMonth.setText(String.valueOf(m));}else{jtfMonth.setText(String.valueOf(++m));}}cld.set(y, m-1, 0);showCalendar(y, m, cld);}if(e.getSource() == bAdd){int r = table.getSelectedRow();int c = table.getSelectedColumn();if(!ld.getText().equals("没有选择日期")){try{File file = new File(ld.getText() + ".txt");BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file)));bw.write(jta.getText());bw.close();}catch (FileNotFoundException ex){ex.printStackTrace();}catch (IOException ex){ex.printStackTrace();}}}if(e.getSource() == bDel){int r = table.getSelectedRow();int c = table.getSelectedColumn();File filedel = new File(ld.getText() + ".txt");if(filedel.exists()){if(filedel.delete()){jta.setText("日志删除成功");}else{jta.setText("日志删除失败");}}else{jta.setText("没有找到日志文件");}}}public void mouseClicked(MouseEvent e){jta.setText(null);int r = table.getSelectedRow();int c = table.getSelectedColumn();if (table.getValueAt(r,c) == null){ld.setText("没有选择日期");}else{this.showTextArea(table.getValueAt(r,c));}}public void mousePressed(MouseEvent e){}public void mouseReleased(MouseEvent e){}public void mouseEntered(MouseEvent e){}public void mouseExited(MouseEvent e){}private void showTextArea(Object selected){ld.setText(jtfYear.getText()+"年"+jtfMonth.getText()+"月"+selected+"日");File filein = new File(ld.getText() + ".txt");if(filein.exists()){try{BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(filein)));String strRead = br.readLine();jta.setText(null);while(strRead != null){jta.append(strRead);strRead = br.readLine();}br.close();}catch (FileNotFoundException ex){ex.printStackTrace();}catch (IOException ex){ex.printStackTrace();}}}public static void main(String[] args){JFrame.setDefaultLookAndFeelDecorated(true);JDialog.setDefaultLookAndFeelDecorated(true);new Rili();}}class Timer extends Thread//显示系统时间{private JLabel lt;private SimpleDateFormat fy = new SimpleDateFormat(" 现在的时间是: yyyy.MM.dd G 'at' HH:mm:ss z ");private SimpleDateFormat fn = new SimpleDateFormat(" 现在的时间是: yyyy.MM.dd G 'at' HH mm ss z ");private boolean b = true;public Timer(JLabel lt){this.lt = lt;}public void run(){while (true){try{if (b){lt.setText(fy.format(new Date()));}else{lt.setText(fn.format(new Date()));}b = !b;this.sleep(500);}catch (InterruptedException ex){ex.printStackTrace();}}}}。