论文部分内容阅读
程序设计是高等学校电气信息类相关专业(计算机、电子、通信和自动化等)本科学生第一学年必须选修的基础课程。学生对该课程的实际掌握情况将直接影响到后续专业课程的学习。然而目前程序设计教学的现状却不容乐观。调查与访谈的结果表明,学生对程序设计充满了畏惧,认为其晦涩难懂,学难致用,并因此沮丧,渐失学习兴趣;而教师也因反复教授学生也无法掌握最基本的程序结构而感到苦恼,渐失教学热情,“难学”、“难教”成为师生的共识。究其原因,笔者认为在程序设计课程的教学中不应该刻意追求大而全的内容,而应尽可能避开那些在初学阶段意义不大、编写一般程序很少用到的内容,重点讲解程序设计的思想和方法,真正做到“精讲”。本文以建构主义学习理论和奥苏贝尔的认知结构理论为基础,对高校程序设计的教学现状进行了调查,并以此为依托,深入探讨了算法与语法规则在程序设计课程中的关系,提出了采用程序设计语言语法子集进行教学的方案,重点分析了子集存在的现实必要性。本文采用理论与实证研究相结合的思路,研究着力设计了一个语法子集抽取实验。实验对现有国内外大量用于高校计算机及相关专业“程序设计基础”课程教学的教材进行分析统计,通过数据采集、数据处理两个阶段将教材中的样例程序文件按照所属算法分类,并对程序代码进行分词、标注;经过统计分析阶段得到一个量化语法子集。该量化子集和笔者在教学实践中总结得出的经验子集进行比对后,二者一致性程度高。实践证明,应用C/C++语言的语法子集开展“程序设计基础”的教学能更好地提高程序设计课程的教学效率,帮助学生理清学习思路,对培养学生分析问题、解决问题的能力有比较大的帮助。本文还进行了相关实验,结果表明:基于语法子集的程序设计教学开展,不会对后续专业课程的教学产生不良影响。最后提出了在实践中有效应用语法子集的教学建议。