前言:想要写出一篇令人眼前一亮的文章吗?我们特意为您整理了5篇教育法与教育方针范文,相信会为您的写作带来帮助,发现更多的写作思路和灵感。
一、中学生责任意识现状
由于社会负面环境的影响,传统道德文化的削弱,家庭教育的偏颇和学校教育的缺陷等一系列因素的影响,目前,中学生责任意识的欠缺主要表现在一下几个方面:
1.个人责任意识不强。受网络不良信息的侵蚀、社会低俗思想和行为的影响,大多数学生价值观发生了偏离,对自己的行为不能负责,公德意识差,言行举止粗俗,缺乏文明礼貌,随意污染环境,损害公共财产,弄虚作假等。
2.家庭责任意识缺失。当前学生中,独生子女占了绝大多数,生活条件的优越,父母的溺爱,生活磨练的缺乏,父母过多的承担了孩子的责任,使孩子依赖性严重,习惯于接受和索取,不懂得付出和回报,讲排场、穿名牌、用名牌。还有部分家庭教育简单粗暴,或者是单亲家庭和重组家庭,这些都会成为不利于孩子健康成长的因素,使孩子缺乏感恩意识和家庭观念。
3.集体责任意识弱化。在社会的发展中,不少学生滋生了以自我为中心的利己主义、享乐主义等思想,不关注他人和集体。他人遇到困难时不能出手帮助,冷漠旁观。对集体活动漠不关心,集体协作观念、服务奉献精神不足。
4.目标责任意识模糊。由于社会极少数腐败现象的影响,大部分学生只是注重个人的需要、利益的满足和物质追求,而忽略精神品位的追求,很少考虑社会需求和公共利益,忽视自身在社会中的价值,没有明确的责任目标。
5.生命责任意识淡薄。在所有责任意识欠缺或者在无责任意识的情况下,就会有打架斗殴、故意伤害、自伤、自残、自杀等诸多伤害生命和生命被伤害的事情发生。
二、培养中学生责任意识的措施
1.以身作则,正确引导。教师不光要有正确的教育方法,还应有高尚的品德,良好的行为,以身作则,为人师表,以负责任的态度感染学生。将责任教育贯穿于校本培训、课堂教学、主题班会等教育阵地,积极引导学生认识自己肩负的责任。
2.正反并举,奖罚结合。用先进事迹和榜样人物鼓励学生,用反面典型事例警示学生。并让学生不仅认识到生活中健康、快乐、成就、幸福等正面的意义与价值,也必须让学生认识到成长中不可缺少的痛苦、挫折、灾难、疾病等负面的意义和价值。在教育过程中,对表现突出的学生进行不同形式的奖励,对违反规定的学生进行不同程度的惩处。
3.提供平台,角色体验。学校根据学生年龄特点,开展各项活动,设计各种专题课程、游戏、参观、走访等形式贯彻责任教育,组织学生积极参与各种承担责任履行职责的活动,给学生体验责任的机会,让他们在活动中学会负责,学会履行职责,逐步培养学生的勇气和能力。使其充分体验到履行职责后的成就感和愉悦感,并让学生明白人不光是为自己活着。
4.家校联手,城乡互动。家庭教育和学校教育要默契配合,联手教育,老师要主动和家长沟通,积累家庭教育成功做法,再利用家长会、家访等形式指导家长的家庭教育。充分发挥家长委员会的职能,努力创造条件,让城里学生走进农村,感受农村生活的辛劳;让农村学生到城里来,体会城市生活的美好。这样,不同的生活体验,会让学生更加懂得珍惜生活,珍惜生命,奋斗目标会更加明确。
5.养成习惯,促进行为。人的责任心是通过生活、学习、社会实践逐渐养成、稳定下来的。我们在教育中注重养成教育,重视把学生的责任意识内化为情感,把情感表现在行动上,从学生学习、生活中的点滴小事抓起,对小事的责任心是对大事责任心的基础,抓紧小事不放松,日积月累,把责任变成一种自觉的行为习惯,这样就会使学生自觉履行责任。
三、建立健全责任教育考核评价机制
诊断学是研究诊断疾病的基础理论、基础技能和基本方法的一门学科,是基础医学过渡到临床医学的桥梁课,它的任务是使学生掌握诊断的原理,学会采集、综合、分析客观的人体资料,运用诊断学的方法由表及里,去伪存真,揭示疾病本质,为进一步学习临床医学的各门课程奠定基础。在成人医学教育中,学生大都是在职卫生技术人员,经过中专或大专阶段的学习,具备了较系统的医学基本知识,有一定的实际工作经验和自学能力,但是由于社会对于卫生技术人员的要求逐步提高,使他们感到所掌握的医学知识和技能不能满足当前工作的需要,这就决定了成人医学教育学生学习的目的并非大量积累理论知识,而是有针对性地学习与本专业有关的知识和技能,提高专业素质。成人医学生的年龄一般参差不齐,年龄偏大学生的记忆力与在校大学生有一定的差距。现代诊断学学科飞速发展,新知识、新方法不断涌现,加之诊断学课程学习较短等特点,因而成人医学教育有别于普通高等教育。
1 明确教学目标
成人医学教育学生多在基层医院临床一线工作,具有一定的专业基础知识和临床实践经验,他们的学习目的是通过学习达到理论水平的提高和知识的更新,大部分学生年龄偏大,有一定的家庭和工作负担。根据以上特点,其教学目标可以定位于学生综合能力的培养。授课教师需要掌握适当的教学方法,以引导学生从开始学习诊断学起就建立正确的学习习惯和思维方法,提高对本课程学习的兴趣;同时,充分发挥学生的主观能动性,培养学生独立思考的能力,使学生的学习情绪始终处于积极状态。在有限的学习时间里,努力拓宽学生的知识面。帮助学生克服学习中的盲目性和局限性。
2 突出教学重点
诊断学是医学基础理论与临床实践相联系的桥梁,其任务是通过学习使学生掌握多种疾病常用的诊断方法及其临床意义,为临床医学课程的学习做准备。在以前的教学中,由于对成人学生的具体情况和学习要求不甚了解,教学过程中师生间的交流较少,教学内容中有大量中专或大专所学知识的重复,因而无法做到有的放矢和因材施教,不能满足成人学生的要求,学习效果也比较差。为此,我们采用了与普通教育不同的方法,在教学中首先明确教学目的和要求掌握的内容,将基础理论知识与临床实际有机地结合起来,建立正确的临床思维和分析方法。在教学内容上,我们根据专科和本科阶段教学内容的差别,对于检体诊断学部分,侧重于培养成人学生的规范化操作训练和临床思维能力的训练。而在实验诊断学部分主要讲授实验方法、临床意义和临床应用的新进展。实验诊断学中的血常规检查是临床三大常规检查之一,在临床疾病的诊断和治疗中具有重要的意义,也是实验诊断学中一个重点章节,我们讲解贫血和感染性疾病时重点讲解血液中红细胞和白细胞数量、形态的变化情况及其在诊断和治疗中的意义,而对于以前学习过的内容,如血细胞的常规检查方法等,只进行简单的复习。理解是学习的最终目的,也是实验诊断学课程教学的重点。在学习实验诊断学课程之前,学生的思维方法大多还停留在理论课阶段,尚未进入临床思维阶段,他们还不善于运用多领域的知识综合分析人体病理生理变化与临床疾病的关系,还未能认识到人体的复杂性。如贫血时红细胞与血红蛋白的下降有一定关系,但并非一成不变;红细胞形态变化对贫血病因诊断和治疗具有更为重要的意义:根据贫血性质,在治疗中红细胞计数、血红蛋白含量及红细胞形态可能出现新的变化:不同的病人可能具有其自身血细胞变化的特殊性等。为了让学生理解这些变化的意义,我们在课堂上重点介绍了贫血患者治疗前后的血常规变化情况及其与病情的关系,引导学生分析相关指标变化的特点,使他们认识到临床检验工作的复杂性和多变性。
3 改进教学方法
成人医学生有其自身的特点,他们来学习的目的重在提高,在教学方法上可以采取多种方式结合,努力挖掘教学内容的趣味性,促使学生积极参与认识和探索知识的过程,力争使学生对所学习的知识有比较深刻的印象。比如在物理诊断学教学当中,为了能让学生规范化操作,放映由全国高等教育学校统一录制的全身体格检查操作光盘J,通过视频和声音等多途径教学,学生对体格检查形成一个有序的、整体的、系统的观念,通过播放体检操作及疾病阳性体征的视频,学生有全新的视觉及听觉体验,加深了对体格检查手法的认识和异常体征的判断。多媒体教学系统可重复使用,有利于促进学生掌握体检的每个细节。也可利用数码摄像机,拍摄教师和学生的体检操作过程,再让学生自己来发现并改正每个细节,有效提高学习效率。充分利用电子标准化患者提高检体诊断水平。例如在心肺听诊触诊电子标准化患者相应的部位可以听到肺部正常、异常呼吸音和心脏正常、异常心音,以及可以触到胸膜摩擦感和心包摩擦。感教学软件将文字、声音、图像、解剖、生理、病理、血流动力学、心电图、X线、CT及彩色超声学有机地结合在一起,学生可在屏幕上直观地看到心脏跳动、膜活动和各种杂音、异常呼吸音产生的机理。使学生对心音、呼吸音产生的机理及听诊特点有了形象、直观的认识。在腹部触诊电子标准化患者腹部可以触及肿大的肝脏和脾脏。可以检查胆囊压痛征,这些异常体征往往在短暂的临床见习中是难于一一见习到的,教学软件生动形象地阐述了肝脾触诊的正确手法,使学生边看边练习,容易掌握且记忆深刻。电子标准化患者运用于成人学生诊断学教学,在一定程度上弥补了教学资源的不足,且能在任何时候提供病理体征给学生练习,较好的解决了学生缺乏对异常体征的体格检查训练问题,是诊断学教学不可缺少的教学设备。
1 开展民办小学预防麻疹疫情暴发健康教育路径的重要性和迫切性
广州市白云区麻疹报告病例发病数近年有明显回升趋势,疫情形式严重,表1所示,报告例数2006、2007年最高,有明显回升趋势。
2007年以来,白云区共发生13起麻疹暴发疫情,16起麻疹暴发疫情有11起发生在学校,均为民办学校。
为了解民办小学家长接受防治麻疹健康教育状况,2007年5~8月笔者采取随机整群抽样、问卷调查的方法,选取小学1~6年级学生家长作为调查对象,共调查598名家长,获得有效试卷564份,有效率为94.3%。其中286例样本选自广州市白云区江高镇的2所公立学校,278例样本选自广州市白云区江高镇的4所民办学校,试卷由本文作者设计,询问并填写调查表。
调查结果显示公立学校家长与民办小学家长为孩子办理疫苗接种证及接种疫苗行为、认识上存在明显差异;疫情发生后公立学校家长回答正确率明显高于民办学校家长,以上数据有非常显著意义。对麻疹的症状、传播途径、是否传染等问题公立学校家长回答正确率略高于民办小学家长,但总体正确率不高;疫情发生后由于疾病预防控制中心及医院及时干预,宣传单张派发及时,家长都接受应急接种措施;发生疫情后正确行为正确率偏低(见表2)。
以上数据显示防治麻疹任重道远,民办小学健康教育基础较差,建立民办学校预防麻疹疫情暴发健康教育路径将促进麻疹疫情及时有效控制[3]对防治麻疹非常必要。
2 民办小学预防麻疹疫情暴发健康教育路径探讨
民办小学生源复杂,家长及老师素质参差不齐,如何做好民办小学预防传染病健康教育,是摆在健康教育工作者面前一个既新且难的问题。根据学校健康教育要求及疾病预防控制中心对预防传染病的流程,结合民办小学特点,笔者以麻疹为例,认为民办小学预防麻疹疫情暴发健康教育路径应从以下几方面着手:
2.1 明确进行健康教育的对象 由于民办小学学生具有家庭到学校,学校到家庭(社区)的明显路径,接触人员比较简单,因此将健康教育的对象明确为学生家长、学校老师、学生。通过防治麻疹等传染病的政策宣传、个人健康培训和健康服务,将使学生及他们的家庭、社区成员都受益[4]。
2.2 以开学前辅导班为主渠道,强调入学验证重要性 为有效控制麻疹发病,教育部门三令五申要求加强学校的验证入学,但由于民办小学经营性质导致验证入学工作不落实,2002-2007年白云区麻疹病例数据说明民办学校存在一定的麻疹免疫空白人群,一旦有传染源存在,即可引起局部的暴发疫情。笔者认为对老师应做到以下几点:①加强与教育部门合作,做好验证入学工作;②进行培训,时间选择在入学前1~2周,通过教委发通知,举办入学查验接种证培训班,传染病知识培训班,学习的课程包括入学查验接种证的法律地位,验证对预防传染病的重要性、如何查验接种证等,考虑到民办学校的经营性质,建议对老师强调如果发生传染病,卫生部门将视情况勒令学校停学停课措施,从教学质量无法保证、引起暴发流行被媒体报道会增加学校负面影响、动摇家长选择学校的信心导致生源下降等入手,引起学校和老师的重视与认真参与;③学校制定制度,将验证工作规范化,并有记录,便于上级部门监督;将健康教育纳入教学计划中,有目标、任务、方法及考核,通过评估要求老师对防治麻疹等传染病知识知晓率达到85%。
2.3 以家访、电话咨询、家长会为载体,在参与中提高家长健康知识 民办小学家长是城市流动人口,普遍存在学历偏低、信息来源窄、经济收入偏低、住址变更快等特点,近年由于本地区流动人口急剧增加,大量麻疹免疫空白人群流入,同时由于存在验证漏洞,很多没接种麻疹疫苗的学生进入民办学校读书。针对这种现象,笔者认为提高接种率必须从民办学校家长入手,强调家长的介入是因为家长的认识及行为直接影响学生接种率,对家长的健康教育建议做到以下几点:①建立有详细地址、电话的通讯录,便于及时联系;②通过定期召开家长会或开办家长学校的形式,向家长传递有关预防接种、麻疹预防、发生麻疹后隔离、治疗等相关信息,个别因工作忙或行为抗拒的家长采取家访,电话咨询的方法;③制定防治麻疹等传染病的健康教育评估单,在进行健康教育培训和咨询后进行考核评估,知晓率要求达到85%,没有达到的进行电话宣教;④根据学校查验接种证资料,对未办证或未及时预防接种的学生,主动联系家长,督促补种疫苗,加强宣传免疫规划一类疫苗接种不收取任何费用的信息,提高其对免疫接种重要性的认识和主动参与意识;⑤在疾病流行期间发放以治疗、隔离、消毒为主的宣传资料,家长人手一份。
2.4 以课堂教学为主渠道,在教学中渗透传染病健康教育 充分利用健康教育课、黑板报、班会等途径和形式对学生进行预防传染病知识的健康教育,切实增强学生的防病意识,培养学生良好的个人卫生习惯,考核可用试卷方式测评知晓率。笔者认为对于学生健康教育主要是发生病例后的应对和心理调节,因为老师和家长是学生最信任的人,在发生麻疹病例时,老师对患病学生要做好安慰及心理咨询工作,告诉学生听从安排治疗和隔离,并做好家长工作,在防疫人员指导下进行疫点隔离消毒,保证病毒不在社区扩散;对非患病学生要告诉大家不要惊慌,在防疫人员指导下进行自我防护或应急接种,并通知家人做好疾病预防措施。
2.5 通过实践演习,制定健康教育路径 民办学校老师、学生、家长一起举办实践演习,提高健康技能。具体操作是进行学校发生麻疹(可其他传染病)病例演习,由卫生防疫部门考核,观察学校报病,配合防疫部门核实、消毒、隔离,保护健康学生,切断传染源、组织易感人群进行预防应急接种,通知家长、家长对孩子的治疗和隔离行为,家庭及周边社区消毒整个防治病流程,针对流程缺陷,及时检查健康教育有无遗漏,纠正错误的行为并予以解释,最终因地、因人制宜制定适合本校的预防麻疹疫情暴发健康教育路径。
参考文献
[1] 许建雄,梁建华,谭慧峰,等.广州市2002-2005年麻疹流行病学特征及控制措施探讨.热带医学杂志,2007,7(7):699.
[2] Rober TC,Rober W,Zeno B,et al.A post-honeymoon period,measles outbreak in Muyinga sector,Burundi.Int J Epidemiol,1994,23(1):185-193.
关键词:教学方法;电路;振动力学;类比
中图分类号:G642.0 文献标识码:A 文章编号:1007-0079(2014)33-0054-02
“电路”与“振动力学”是绝大多数机械类专业的核心课程。其中,“电路”课程包括静态电路和动态电路两部分,即状态不随时间变化的电路和状态随时间变化的电路。力学类课程也分为静力学、动力学两部分,即状态不随时间变化的力学系统和状态随时间变化的力学系统。与静力学学科如“材料力学”相比,“振动力学”由于考虑了系统的惯性,系统的位移、速度等都是随时间变化的,因而是一门动力学学科。
在动态电路和振动力学中,系统的数学模型都是以时间为变量的微分方程。对于离散系统(集总参数电路、单自由度及多自由度力学系统),方程为常微分方程或常微分方程组,对于连续系统(分布参数电路、连续介质力学系统),由于系统的状态不仅与时间有关,还与空间有关,系统的数学模型满足偏微分方程,即方程中既有对时间求导项,又有对空间求导项。所以,“电路”与“振动力学”的许多概念从数学原理上都是相通的,目前已有一些学者提出了这一点。[1,2]
由于机械类学生对微分方程的知识仅在“微积分”课程中有一些粗浅认识,因此这两门课对其而言具有一定的难度。由于学生要先后学习这两门课(一般是先学习“电路”,再学习“振动力学”),若在后一门课程的教学中使用前一门课程的概念进行类比,可以使学生触类旁通,一方面更容易接受新课程的内容,另一方面也深化了对物理概念背后数学原理的认识。笔者在“振动力学”课程中将概念与“电路”进行类比显著提升了教学效果。下面针对这两门课的可类比性,试举几例。
一、回路电流法标准形式与刚度矩阵的类比
回路电流法是一种求解电阻电路的方法,这种方法虽然一般应用于静态电路(如果引入阻抗的概念,也可以应用于动态电路稳态分析),但是由于“振动力学”中刚度矩阵的建立实际上也是基于静力学原理的,所以从下文可以看出,这两种方法有一定的相似性。
首先介绍回路电流法。对于具有n个独立回路的“电路”,回路电流法的标准形式为[3]:
写成矩阵形式则为:
其中:
(1)
式(1)中,对角线上的元素为各回路的自电阻,总为正值。自电阻的物理意义为:某一回路有单位电流流过时,单位电流在该回路产生的电压。非对角元素为各回路之间的互电阻,若流过互电阻的两个回路电流方向相同,则此互电阻为正,否则为负。互电阻的物理意义为:某一回路流过单位电流时,该单位电流在另一回路产生的电压。
而振动力学中,具有n个独立自由度的力学系统,其刚度矩阵的标准形式为[4]:
(2)
式(2)中,对角线上的元素为在某一自由度施加单位力时该自由度产生的位移,显然这个值总为正值。非对角元素为在某一自由度施加单位力时,另一自由度产生的位移,若位移与力的方向相同,则为正值,反之为负。
通过对公式(1)和(2)形式上的比较和物理意义的解释,可以看出这两个矩阵在数学形式上相同,物理概念上相似。显然,此时电路中的独立回路可以与力学中的独立自由度进行类比,此时电流对应力学中的力,电压对应力学中的位移。因此,在学生先修过“电路”的情况下,在“振动力学”的教学中可以通过类比的方法使学生迅速掌握刚度矩阵的建立方法以及理解其本质,这样可以显著提高教学效率。
二、二阶电路零输入响应与单自由度阻尼自由振动的类比
力学中的单自由度系统需要用二阶微分方程描述,二阶电路亦然。因此两者具备可类比性。限于篇幅,这里只考虑系统模型为齐次微分方程的情况,也就是电路系统和力学系统都不存在激励,分别对应二阶电路的零输入响应和单自由度系统的阻尼自由振动。
首先考虑电路系统。RLC串联振荡电路为典型二阶电路,设回路中电流为i,为了更好地从形式上与振动力学系统进行比较,将电流写成电量q对时间的一阶导数,即以电量q为基本变量,则其满足方程(3) [3]:
(3)
而对于有阻尼单自由度系统,其位移x满足方程(4):
(4)
显然方程(3)和(4)具有数学形式上的相似性。可以看出,若分别以电路的电流和单自由度系统的为位移为变量,则电路的电感对应于力学系统的质量,电路的电阻对应于力学系统的阻尼器,电路电容的倒数对应于力学系统的刚度。
对于电路系统,振荡的原因在于电感存储的磁能与电容存储的电能互相交换,而电阻起耗散能量的作用。对于力学系统,振动的原因在于质量拥有的动能与弹簧存储的弹性势能互相交换,而阻尼器起耗散能量的作用。从表1中可以清楚地看出两种系统中存在的对应关系:
表1 二阶电路与单自由度振动系统的各物理量类比
二阶
电路 电量q 电流 磁能 电能 电阻功率
固有频率
单自由度振动系统 位移x 速度 动能 势能 阻尼单位时间内耗能 固有频率
因此,在处理二阶电路和单自由度振动时,有很多方法的本质都是相同的。如求解电路任意激励下响应的卷积积分法和求解单自由度系统在任意激励下响应的杜哈梅积分法、求解简谐激励下电路稳态响应的相量法以及求解简谐激励下单自由度系统稳态响应的复指数法,等等。在教学中,通过建立类比可以使学生迅速理解相关概念、掌握相关方法,从而达到事半功倍的教学效果。
三、均匀传输线与杆的纵向振动的类比
由于许多机械类学科并未开设“数学物理方程”课程,在“微积分”课程中也未有提及这部分内容,因此由偏微分方程描述的连续系统对于学生而言一直是最大的难点。电路中的均匀传输线和振动力学中连续介质的振动均由偏微分方程描述,其中,无损耗传输线和杆的纵向振动具有数学上的相似性,均为一维波动方程。
下面首先考虑无损耗均匀传输线。设无损耗均匀传输线单位长度电感、电容分别为L0和C0,则其电压、电流的变化规律一般写成如下的偏微分方程[3]:
(5)
(6)
式(5)和(6)可以整理为标准一维波动方程的形式。将式(5)对空间尺度x求偏导,可得:
(7)
式(6)对时间t求偏导并乘以L0,可得:
(8)
式(7)和(8)相减,可得:
(9)
而对于密度为ρ、弹性模量为E的等截面直杆,其纵向位移χ满足偏微分方程:
(10)
对比(9)和(10)可以发现,无损耗均匀传输线和杆的纵向振动在数学模型上是一致的,均为一维波动方程。(9)和(10)右端项系数的平方根分别为电压的相速度和纵波在杆内传播的速度。这两个方程均可以使用经典的分离变量法进行求解。在教学中,通过两者的类比归纳总结出一维波动方程的普遍性质和求解方法不但可以使学生迅速掌握繁杂的数学公式,而且使学生对公式的认识提高到一个具有普遍意义的层面。
四、结论
本文针对“电路”和“振动力学”中数学原理的相似性,提出了类比教学方法的概念。通过在课堂上引入类比教学的方法,首先可以使学生基于旧知识迅速掌握新知识,其次可以使学生在学习新课程时对已修课程的知识进行巩固和深化理解,最后还可以使学生对物理概念的认识升华到数学原理的层面。从宏观层面,类比教学方法可以优化课程结构,避免相似数学原理在不同课程中的重复讲解,可以使学生对广泛知识的认知水平得到提高,也会提升工科类学生的数学修养。类比教学方法不仅适用于文中提到的两门课程,也适用于所有具有相同或相似数学概念的课程,因此具有巨大的推广价值。
参考文献:
[1]梁立孚.飞行器结构动力学中的几个问题[M].西安:西北工业大学出版社,2010.
[2]Preumont.Mechatronics:Dynamics of Electromechanical and Piezoelectric Systems[M].Springer,2006.
摘要:指针是C语言的重点,也是教学难点。本文基于计算机教学实践,分析了边疆学生学习C语言指针过程中存在问题的原因,提出了适用的教学方法,提高学生理解和应用指针的能力,进一步增强教学效果。
关键词:指针;教学现状;教学方法
中图分类号:G642
文献标识码:B
1引言
C语言是程序设计语言中专业性较强的语言[1,2],为适应信息化社会对人才培养的要求,我区各高校普遍开设了C语言程序设计这门课。由于我区是少数民族居住区,各高校少数民族学生占较高比列,他们虽然具有一定的汉语水平,但是在学习计算机课程时对专业词语生疏,因此在语言理解方面存在较大困难。指针又是C语言的精华,指针变量提供对内存单元的间接访问方式,不同于以往的直接访问方式。同时,指针数据类型繁多,书写格式相近,使用不当容易引起混乱。这些加大了少数民族学生对指针的理解难度。但是另一方面,利用指针可以对不同数据结构进行快速处理,还可以为函数间各类数据的传递提供简便方法,灵活应用指针,可以编写出简洁、紧凑、高效的程序。指针是教学的重点,学生不仅要理解而且要灵活应用。为了突破教学中的难点,本文先对指针内容和教学现状进行了分析研究,在此基础上提出了适用的教学方法,目的是进一步提高边疆地区C 语言的教学效果。
2指针教学内容和教学现状的分析研究
2.1指针的特点决定学习难度
(1) 概念多,易混淆
在指针章节中,许多概念容易混淆,如变量的指针和指针变量,指针数组和数组指针,指针函数和函数指针等。变量的指针是变量的地址,指针变量是专门存放地址的变量;指针数组是每个元素均为指针变量的数组,而数组指针是指向数组的指针;指针函数是返回值为指针的函数,而函数指针是函数的首地址。微小的差别,却表示不同概念。
(2) 数据类型多
引入指针概念后,可以定义出许多新的数据类型。如:整型指针变量、字符型指针变量、实型指针变量;整型指针数组、字符型指针数组、实型指针数组;指向一维整型数组的数组指针、指向一维字符型数组的数组指针等,并且数组下标值不同或数组维数不同,表示定义了不同的数组指针变量;除此之外,还有指针函数类型和函数指针类型以及指向指针的指针数据类型等。
(3) 语法要求苛刻
指针内容的语法细节要求严格,如:(*p)++和*(p++),p为指针变量,仅括号位置不同,表示不同意义。前者表示p所指向变量的值加1,后者表示先对p的原值进行*运算,然后使p的值改变。
(4) 指针应用灵活
指针应用非常灵活,可以应用于普通变量,数组,字符串,函数等,对所指向的数据进行操作。熟练的编程人员,利用它可以编写出颇具特色、高质量的程序,实现其它高级语言难以实现的功能,但是初学者应用指针十分容易出错。
2.2教学现状
(1) 教学目标
掌握指针类型及其表示方法;应用指针访问数组;应用指针对字符串进行操作;了解指向函数的指针和返回指针值的函数概念;了解指向指针的指针概念。
(2) 教学内容及安排
①指针,指针类型,指针变量。具体包括:地址和指针概念;定义、引用指针变量;指针变量作函数参数。
② 数组与指针。具体包括:应用指针访问一维数组元素;用数组名作为函数参数;了解指针访问多维数组元素等。
③ 字符串与指针。具体包括:字符串表示形式;应用字符串指针作函数参数;应用字符串指针变量实现对字符串操作。
④ 函数与指针。具体包括:函数指针变量的定义和引用;返回指针值的函数的定义和引用。
⑤ 指向指针的指针概念。
(3) 教学现状分析
目前,大多数高校采用先进的多媒体设备辅助教学,增强了课堂教学的新颖性和生动性,但是教学方式仍局限于传统方式――从语法角度按部就班地罗列语法知识,并且多媒体教学过多追求情节和画面,分散了学生的注意力,使学生对指针的理解过于肤浅,作题时不知所措。每学期期末,在对本校非计算机专业学生C语言试卷调查中发现:即使指针试题是判断题或选择题,90%的学生仍会失分。
教学实践证明:对于抽象复杂的指针概念,采用板书的教学方式,教学效果明显高于多媒体。一方面:教师在黑板上书写过程中,学生有充分时间理解和思考;另一方面:教师可以根据学生的反应,灵活调整授课内容或者改变教学方法。以下,根据指针内容概念多,难理解;数据类型多,难区分;语法细节多,使用灵活等特点,本文提出了适用的教学方法。
3指针教学方法探讨
3.1由已知学习未知,进行比较和对照
知识和技能的悉得,除掌握正确方法外,还需要扎实基础,学习C语言也不例外。学生对C语言基础知识掌握的熟练程度,直接影响指针的教学质量。在指针章节中,大部分内容与前面知识有关,在教学过程中,如果忽略概念间的相似点,将耗费学生较多精力学习新内容;如果缺乏概念间的对比,将使学生很难深刻理解所学内容,容易引起混淆。
以学习“指针变量”为例,首先应该清楚“指针变量”也是“变量”,固具有“变量”的特点,如:变量值可以改变;任何变量名必须先定义,后使用;变量名表示一个符号地址等。其次,要明白“指针变量”与“变量”的区别:指针变量的存储单元中,存放的是地址值而非数值。由此“指针变量”与“变量”之间的联系和区别总结如下:
(1) 指针变量的值可以改变;不过其值一旦改变,表示指向不同存储单元。
(2) 在引用指针变量之前必须先定义,标识符即为指针变量名;与一般变量的定义不同的是:指针变量的数据类型与它本身没有关系,仅表示它所指向的数据的数据类型;变量名前需加“*”;此外,在引用之前,还必须将相应类型变量的地址先赋给指针变量,以确保指针变量有确切指向,不至于破坏内存中的系统数据。
(3) 虽然指针变量存取的是地址值,但是同一般变量一样,指针变量名也表示一个符号地址,编译时为其分配存储单元。
以下通过表1,对比变量与指针变量的定义和引用形式:
程序1运行时,变量i的内存状态如图1所示:
程序2运行时,变量i和p的内存状态如图2所示:
分析说明:如果把存储单元比喻成房间,则内存地址相当于房号。C语言的内存地址是一个从0 到65535之间的整型值。编译时系统自动为每个变量(包括指针变量)随机分配内存地址。如:程序1中变量i的内存地址是3001;程序2中变量i的内存地址是2301,指针变量p的内存地址是4000。程序2中语句“p=&i;”相当于“p=2301;”,其作用是使p指向了i;语句“*p=20;”相当于“i=20;”,作用是将数值20写入i所在的存储单元。
这种帮助学生充分利用所学知识和经验,理解和掌握新内容的方法,在认知心理学领域称为“正迁移”。文献[3]提出,在教学过程中,如果能全面了解和准确把握迁移规律,将有效增强学生的认知能力和记忆能力,提高学习成绩。实践证明:新、旧知识之间进行比较和对照(对照显现出相同,比较体现出差异),将有助于学生快速发现迁移规律。如果运用同样的方法,由数组学习指针数组,由函数学习指针函数,由指针变量学习指向指针的指针变量等,那么指针的教学难度将明显降低,学生将快速而有效地掌握更深层次的指针概念。
3.2善于罗列和总结
针对指针概念多、数据类型多,易混淆的特点,在教学过程中,如果善于发现规律,对所学知识进行“罗列和总结”,那么将增强知识结构的系统性和完善性,同时将零碎的知识点串联起来,提高学生的记忆能力和辨别能力,进一步改善教学效果。
以数组与指针为例,学习了指针之后,运用指针法同样可以表示数组元素,且该方法使目标程序占内存少,运行速度更快。但是面对下标法和指针法引出的多种表示形式,初学者往往难以准确区分,使用时容易出错。表2对两种表示数组元素的方法进行了全面总结。
说明:表中a代表数组名,p代表指针变量名,p的初值为a(p所指向的数据的数据类型与a数组元素的数据类型一致)。下标法中a[i]表示数组元素的值,&a[i]表示数组元素的地址;指针法中*(p+i) 表示数组元素的值,p+i表示数组元素的地址,这些表示形式学生容易理解。但是,下标法“*(a+i), a+i”和指针法“p[i],&p[i] ”这两种表示形式比较抽象,学生不易理解,需要进行简单推理。观察表2后发现:下标法“*(a+i), a+i”与指针法“*(p+i), p+i”类似,之所以也可以这样表示,原因在于p的初始值为a,则a+i 和p+i都指向a数组第i个元素;指针法“p[i],&p[i] ”与数组法“a[i],&a[i] ”类似,原因在于“[ ]”是变址运算符,a[i]表示按a+i计算地址,再取值,而p+i和a+i含意相同,则p[i]等价于a[i]。
通过全面的总结和简单推理,初学者将比较容易掌握所有表示方法,并且牢记各种表示形式的真实含义,使用时能轻松驾驭,不致于混淆出错。
理解了指针与一维数组的关系,对于二维数组的表示形式,也可以通过“总结”的方法,加深理解记忆[4]。如语句:int a[3][4]; 定义了一个三行四列的整型二维数组,共十二个元素,见图3 (在内存中,依据按行存放的原则) ,把二维数组a看作是一个特殊的一维数组,它有三个元素:a[0],a [1],a [2];每个元素又是一个一维数组,如a [0]是四个元素:a [0] [0],a[0] [1],a[0] [2],a[0] [3]的数组名,以此类推。
根据二维数组的特点,指针分为行指针和列指针,行指针有两种表示形式:“a+i和&a[i]”。由图3学生很容易理解“a+i”表示行指向的指针,此外“&a[i]”也表示行指针,原因是:此时a[i]为一维数组的数组名,表示列指针,而列指针前加上“&”就转换成行指针了。需要强调的是:二维数组的行指针只指向具体的行地址,二维数组的列指针才指向具体的存储单元,按照指针访问方式的不同,对二维数组的数组元素的各种表示形式总结如下(见表3,其中 ):
经过总结,二维数组元素的各种表示形式就容易区分了。
在教学过程中,要善于发现规律,这样才便于从不同角度对指针内容进行总结,发现知识点之间的相关性,将零散的知识串联起来,加深理解和记忆。如:指针章节中,起始至终都贯穿着指针变量,那么从指针变量的主要用途出发进行总结,见表4:
由上表可以看出,指针变量用途广泛:使用指向单变量的指针变量作为函数参数,在主调函数中可以得到多个变化了的值;使用指向数组的指针变量,可以大大提高执行效率;使用指向字符串的指针变量构成指针数组,在处理多个字符串时,可以节省内存空间,也可以提高程序的执行效率;使用指向函数的指针作函数参数,可以使一个通用函数实现专用功能;使用指向指针的指针变量,可以实现变量的二级寻址[5]。指针变量灵活的使用方式,往往让初学者眩晕。但是从表4指针变量的表示形式这一列中发现,所有指针变量具体应用时,都遵循规律:(1)先定义;(2)再赋值;(3)再引用。通过归纳和总结,学生看到了变化中不变的性质,在具体应用时,才会以不变应万变,降低学习难度。
3.3注意语法细节,勤于上机实践
指针应用灵活,值得注意的语法细节较多,如:p为一个指针变量,p++的含义,已不是简单的将p值加1,而是p+1*d,d=sizeof(p所指向的数据的数据类型)。这些细微之处直接影响学生实际分析程序,理解程序和编写程序的能力。但是,过多拘泥于细节,又会使学生感到枯燥无味。为了促进学生正确掌握语法知识,培养学生实际的编程能力,在整个教学过程中,上机实践必不可少[6]。具体方案如下:
(1) 开设验证性实验。要求学生大量上机,调试教材中现有的程序,弄清语法细节,不断积累经验。
(2)开设设计性实验。教师根据学生的实际情况,指定上机题目,学生在课前设计算法、编写程序,在上机课上对编写的程序进行调试、修改。整个实践环节,遵循循序渐进的原则。教师应该启发学生,如:相同的问题能否采用不同的方法解决?用同一方法能否解决不同问题?等等,不断拓宽和提高学生的编程思维。
总之,C语言是一门实践性很强的课程,只有不断上机摸索,才能熟练掌握并灵活应用。
4总结
C语言是计算机专业和相关专业的一门重要基础课程,指针是C语言的重点,但是因其概念复杂、使用灵活,大多数学生难以掌握。在实际编程过程中,学生更容易出错,而且错误难以发现。这对教师的教学水平提出更高要求,教师不仅要对C语言指针有深刻理解,而且要有丰富的教学经验,激发学生的学习兴趣。经过多年教学实践,本文总结出以上三种有效的教学方法。实践证明:灵活运用这些方法,将有效降低教学难度,并取得理想的教学效果。
参考文献:
[1] 谭浩强. C语言程序设计[M]. 北京:清华大学出版社,2000.
[2] 王柏盛. C程序设计[M]. 北京:高等教育出版社,2004.
[3] 苗丽萍,安志红. 现代认知结构论对教学的指导作用[J]. 佳木斯大学社会科学学报,2004,(5).
[4] 李振涛. C语言多维数组与指针的探讨[J]. 长春师范学院学报,2003,22(2):30.