论文范文网-权威专业免费论文范文资源下载门户!
当前位置:毕业论文格式范文>论文范文>范文阅读
快捷分类: 课程教学杂志 教育教学论坛杂志 外语教学期刊 教学论文范文 课程论文的标准格式 教育教学论坛期刊 网络课程教学论文 地方课程教学论文 新课程教学杂志 学术论文写作课程教学 微课程教学论文 小学新课程教学论文

课程教学方面论文范文检索 和用ACM训练促进程序设计课程教学相关论文写作技巧范文

分类:论文范文 原创主题:课程教学论文 发表时间: 2024-02-03

用ACM训练促进程序设计课程教学,本文是课程教学方面本科毕业论文范文与程序设计和课程教学和训练方面论文写作技巧范文.

【摘 要】 程序设计是计算机相关专业的基础核心课程,该门课程的熟练掌握,对后续专业课程的学习至关重要.如何做好程序设计课程的教学,促进学生的理解和吸收,是许多程序设计课程教学者十分关注的问题.本文描述了在程序设计课程的教学中,引入ACM 训练的具体做法和好处,经过教学实践,这种方式可以取得良好的教学效果.

【关键字】 程序设计 ACM 教学

程序设计课程是计算机相关专业的必修课,也是十分重要的学习内容,初学者在学习和掌握过程中往往会觉得难度很大,不容易掌握.ACM 竞赛是由ACM(Association forComputing Machinery 美国计算机协会)组织的年度性竞赛,该竞赛提倡创新和团队协作,鼓励学生在构建全新的软件程序过程中发挥创新,检验学生在强压力下的工作能力,该竞赛旨在向全世界的大学生提供一个展示和锻炼其解决问题和运用计算机能力的机会.用ACM 训练来促进学生进行程序设计课程的学习,可以更好的培养学生的实战能力,灵活掌握程序设计的技巧和方法.经过多年的教学实践证明,该方法有效促进了学生对程序设计相关知识点的理解和掌握,能够取得更好的教学效果.

一、方法

进行ACM 训练.在OJ 系统中有大量的ACM 习题,还可以不断补充新的题目,同时系统可以对学生提交的程序代码进行评判,并给出评判结果.通过组织学生进行ACM 训练,促进学生对程序设计课程的学习.我们的具体做法是:

1. 学生组队进行训练.ACM 竞赛是组队参赛,每支队伍最多由三名选手组成,只能使用一台电脑,各参赛队成员相互协作完成竞赛试题.在程序设计课程中鼓励学生自由组队进行训练,要求各组成员加强团队协作,互相鼓励、取长补短,并定期进行经验分享和交流,这样更有利于激发学生的学习兴趣和积极性,促进学习的开展.

2. 每周公布完成题量.没有比较就不知道差距和不足,因而我们要求学生充分利用业余时间进行ACM 练习,并每周公布各队完成的练习题量和排名,让学生在相互的比较和竞争中不断的加强学习.学生会十分关注各组完成的练习题量和排名情况.

3. 组织参加竞赛.比赛很能锻炼一个人的心理素质和临场应变能力.让学生尽可能多的参加比赛,也可以让他们在竞赛中不断的学习和提高,增强编程能力,同时也培养他们良好的心理素质,不急不躁,全力与队友协作、分工,顺利完成比赛.

4. 开设专题讲座 .好的讲座让人受益匪浅.定期邀请有经验的专家学者开展ACM 专题讲座,为学生解惑答疑,传授新的观点、方法和知识,有助于学生开阔视野,迅速提高水平,同时也有助于相互之间的交流和学习.

二、优势

1. 增强竞争意识.学生分组进行学习和训练,每周公布各组完成的练习题量和难度,让学生在相互竞争中学习.还要定期组织竞赛,这样可以锻炼学生的临场应变能力和比赛时的心理素质.在竞赛中我们仿效传统ACM 竞赛做法,各队学生只要AC(Accepted)一道题,就可以展示一个标志物.这样,学生可以在对其他参赛队完成情况一目了然的情形下,继续完成竞赛.这对参赛者的心理承受能力将是一个很大的考验.学生通过训练和竞赛不断提高,激发了他们的学习积极性和主动性.

2. 增强思维的严密性.在ACM 训练中,通过OJ 系统提交和检测程序,有利于判断程序语法和逻辑的正确性与合法性,这给教师的教学也带来了一定的便捷.学生在练习过程中,向OJ 提交程序,让系统来判断程序的正误,可以训练学生培养更缜密的思维,充分考虑程序出错的各种可能性和测试数据的特殊性.例如,“求两个整数的最小公倍数”,是程序设计课程中最普通的一个示例.学生按照教材中常用的方法:先求出两个数的最大公约数,再用两个数的乘积除以其最大公约数,即可求出最小公倍数.以C 语言编写程序,具体代码如下:

#include<stdio.h>

int main()

{

int x,y,a,b,c;

while(~scanf(“%d%d”,&x,&y)&&x!等于0&&y!等于0)

{

a等于x; b等于y;

while(b!等于0)

{

c等于a%b;

a等于b;

b等于c;

}

printf(“%d\n”,x*y /a);

}

}

但在OJ 系统提交了该程序后,系统总提示“WrongAnswer”.许多人百思不得其解,究竟是哪里出现了错误.按常理算法是没有问题的,而且课本上也是这么写的,但在OJ 中却总是提示错误.经过查阅资料和认真思考后,发现问题在最后的“x*y/a”上.先做乘法,即x*y,产生的结果可能会发生超界的情况,因而系统会报“Wrong Answer”,如果先做除法再做乘法,改为“x/a*y”,就能得到正确结果,巧妙的避免了越界情况发生.

通过这样的事例会引起学生的思考和重视,编写程序要求思维更加缜密、细致,尽可能考虑周全各种会发生的情况.我们编写程序不仅是单纯的考虑算法正确与否,还要注意算法是否是最优的,会不会超时,以及一些小的细节:是否越界、类型是否一致、格式是否达到用户要求、是否考虑到一些特殊的取值……

学生学到的更多是程序设计过程中的一些实战经验和具体运用.同时也更好的将算法、数据结构等知识和程序设计有效的融合起来,进一步提高编程的能力.

三、教学效果分析

经过比较以ACM 训练促进程序设计教学的班级和传统方式进行程序设计教学的班级,学生在学习态度、积极性和对知识的掌握程度上,存在较大的差异.

1.学习积极性更高.由于ACM 训练的促进作用,学生在学习过程中会进行相互比较和督促,他们会自觉利用业余时间去做题,也会在OJ 系统中了解自己的排名情况.在每周的集训中,还会和小伙伴们分享难题的技巧和方法.在这样的学习氛围中,学生的学习兴趣会越来越浓,学习积极性也很高.经常组织学生参加一些ACM 竞赛,学生能在比赛中得到锻炼,提高了编程技能,同时也能取得一些名次和奖状.通过竞赛,学生也增进了与外校同学的沟通与交流,开阔了视野.

2. 掌握知识更牢固.在传统的程序设计教学中,学生为学习而学习,只满足于学懂书本上的内容,完成教师布置的作业;而教师不可能对每位学生的每个程序都进行逐一评判和调试.而在ACM 训练中,由于OJ 系统内题库的题目十分丰富,也建设得相对很成熟,学生可以自己在OJ 中做题、评判,发现问题认真思考,也可以请教老师,与同学讨论.通过实战训练,学生对程序设计的基础知识掌握更牢固,编程的细节更关注,学习效果也更好.

程序设计课程对初学者的确有一定的难度,要把这门课程学好、学精,需要注重技巧和方法.经过实践,我们发现结合ACM 训练来促进程序设计课程的教学,可以利于学生积累实践经验,同时也能帮助他们对算法、数据结构等相关知识进行系统的学习,能够取得更好的教学效果.

参 考 文 献

[1] 武建华. 基于ACM 模式的数据结构实践教学改革与探索[J]. 计算机教育,2007(12).

[2] 朱月秀. 基于ACM 竞赛的C++ 程序设计课程教学改革[J]. 漳州师范学院学报 ,2012(03).

[3] 丁海燕等. 高级语言程序设计案例教学模式的探讨[J]. 计算机教育,2010(03).

[4] 鲁红英等.“C/C++ 语言程序设计”课程教学改革与实践[J]. 计算机教育,2013(04).

[5] 刘芳.《C 语言程序设计》教学存在问题及改进[J]. 教育理论与实践,2012(12).

小结,本文论述了关于程序设计和课程教学和训练方面的相关大学硕士和课程教学本科毕业论文以及相关课程教学论文开题报告范文和职称论文写作参考文献资料.

参考文献:

1、 大众创业万众背景下的程序设计课程教学改革探究 李磊,董卓莉,张红梅(河南工业大学信息科学与工程学院,河南郑州450001)摘要针对目前大学生创新创业存在受众面较窄、针对性不强及动手能力弱……问题,分析了程序设计课程教学对大学生创新创业的支撑,在&.

2、 民族地区高校Ja程序设计课程双语教学和 任廷艳(黔南民族师范学院 计算机科学系,贵州 都匀 558000)摘 要分析目前民族地区高校双语教学中存在的主要问题,提出Ja程序设计课程双语教学的建设方案,从教学目标、教学管理、教学计划、教师培养….

3、 基于知识迁移的程序设计课程实践 摘 要针对计算机程序设计课程在教学实施中存在的实践内容与学生知识背景脱节、实践效果不理想……问题,提出以学生熟悉或感兴趣的知识场景为牵引,开展基于知识迁移的课程实践,利用数理学理论知识迁移实现课程互动.

4、 普通本科程序设计课程的泛在学习应用 郑秋生,王 璐,王文奇,刘凤华,夏敏捷(中原工学院 计算机学院,河南 郑州 450007)摘 要为提高普通本科院校程序设计课程的教学效果,从兴趣和逼迫角度,提出一种以编程训练为中心的泛在学习模式并实践.

5、 流程图在程序设计语言教学中的应用 摘要针对学生学习编程过程中存在的问题,在结构化编程思想的基础上,将流程图应用于程序设计语言教学之中 实践证明这种方式有助于学生理解程序设计语言中的基本控制流程,掌握自顶向下的设计方法,提高分析问题解决.

6、 C语言程序设计课程改革措施 中图分类号G642 文献标识码A DOI10 16871j cnki kjwhc 2018 11 027摘要计算机科学是21 世纪对人类生活影响最大的前沿学科,程序设计是计算机学科发展的基石,同时计算.