C 语言函数教学设计与实践 一、函数在 C 语言程序设计课程中的地位 函数部分的学习被安排在三大程序控制结构之后,有利于学生对函数知识点的系统学习,也能够使学生深刻理解结构化程序设计的全局思想,在大学期间开设《C 语言程序设计》课程的主要目的是培育学生充分利用信息时代的优势,通过编程解决实际问题的能力。实际上 C 程序的基本组成单位是函数,课程所有知识点的学习最终都将落实到编写各种函数来进行验证和实现。因此,学生只有灵活掌握函数的运用,才能为后续学习奠定坚实基础。 二、传统函数教学存在的问题 传统函数教学流程如下:其一,函数定义及其形式;其二,函数形参,return 语句,函数返回值;其三,函数声明,格式,位置;其四,函数调用,函数实参等。这种传统的教学流程过于强调函数语法知识,概念和规则的讲解,这样导致学生似懂非懂,与教学理念相违反,为了适应教学要求,突出以学生为主,教员为辅的教学理念,主要探讨函数的教学设计及实践[1]。 三、新的函数教学设计及方法 函数教学主要以发现问题、分析问题、解决问题为思路开展教学,以启发、引导、对比和总结为辅帮助学生分析问题解决提出的问题。不仅可以让学生带着兴趣学习,也会加深学生对知识点的深刻理解及灵活应用。本堂课的教学流程是:交代任务;提出问题、发现问题、解决问题;巩固练习[2]。第一,提出问题、分析问题、解决问题。学生只学过在 main 函数中编写简单程序,于是向学生抛出问题:复杂程序应如何进行组织和设计?在此,给学生一些时间利用 main 函数来解决给定任务,解决完毕和同学生一起验证结果,然后引导学生分析这种解决方式在实际中存在的问题,并启发学生思考解决此问题的最佳方法,从而引出学习的内容——函数法。接着再次引导学生用函数法重新解决给定的任务,最后将解决该任务的两种方法进行对比,让学生讨论、体会并总结出复杂程序的设计方法。第二,巩固练习。在这个环节,笔者设计了带有陷阱的小例子:通过编写 swap 函数来实现主函数中两个整数的交换,给学生一些时间讨论、验证结果,引导学生分析其中的问题,同时引出函数调用流程这一知识点,并通过动画演示的方式帮助学生分析函数调用流程。 四、函数教学实践 第一,利用结构化程序设计原则设计复杂程序。在 main 函数中编程解决问题的基础上引导学生独立解决给定任务,发现大部分学生都能很好地编写出程序,让学生观察上述代码,联系实际启发引导学...