2016级计算机专业的C语言分为两个学期,第一学期是C语言(基础),第二学期是C语言(高级),在第一学期主要学习的内容是基本的数据类型,分支结构和循环结构,一维和二维数组,字符数组,函数。通过这学期独立书写一个基本的程序应该没有问题,第二学期在第一学期的基础上继续学习指针和自定义数据结构(结构、公用和枚举)等。本学期是第二学期即C语言(高级)课程,在实验室授课,每个学生有一台电脑,所以在授课方式上采用的像翁恺老师mooc一样的方式,即在说明一个知识点后编辑运行实例来说明该知识点,或者通过实例引出知识点,也就是边讲解边编程的方式。
存在的问题:
学生反应的问题是一边听知识点一边去编程时,有的时候敲代码跟不上,或者跟上了但不知道知识点和所敲代码的关系,或者是知道了知识点再去敲代码,敲代码的时候反倒忘记要证明什么知识点了。总之不适应手脑配合的上课方式。
该问题的原因:
那么为什么不适应手脑配合的授课方式呢?主要原因是学生从小学、初中到高中的上课方式都是:老师课堂上讲解,而学生只是配个耳朵去听即可,可能有些同学还会记笔记,总之都是被动接收,而现在的授课方式不仅需要耳朵,而且需要手和脑袋。
解决方案:
如何解决该问题,两种方法:老师调整或者学生调整。
1)老师调整
目前选择是在上课之前把课堂内容以博客的形式事先发给学生,给学生留出预习的时间,如果还是效果不好,则将程序都写好事先发给学生,然后恢复学生从小习惯的方式,将知识点和相应的例题都放在PPT里,用编译器只是运行事先写好的例题。
2)学生调整
必须调整两个误区:1C语言只靠看书记忆就能学好,2C语言靠课上的36学时就能精通!这两点都是不可能的。
即使老师做了调整,学生也必须相应的调整,调整学习方法,高考前的学习方法针对有些科目还是可以的,但是对计算机专业则是行不通的,计算机专业最重要的不是记忆知识,而是实践知识。有些同学反应不理解所学知识,那么就是实践编程的太少,C语言甚至以后高年级学习的计算机知识只有通过编程才能理解透彻,否则很难理解到位。
有些同学在私下问问题,问题是:”课本上说这种写法不行,我不知道为什么不行,所以问问你“。首先问问题就说明这个学生挺爱学习的,课下在看书哪。但是我问他编程实现了吗?回答没有!呃呃呃,学习C语言必须编程,不编程实现干看课本,说实话我是看不下去的。
即使你记忆力超群,通过以前的学习方法,看书将所学的知识都记忆下来,可能你能考高分,拿到各种奖学金,但是将来工作后依然会遇到困难,因为在IT公司就是使用手编程来挣钱的,高分是换不来工作后的钱的。
所以无论在课上还是课下,如果你在学习C语言,必须同时打开编程软件:比如dev c++,一边学习一边编程,当理解不透彻的时候上网查询,在网络上存在各种帖子,从各种不同的角度去解释这个事情,总有一个角度是你能够理解的。另外网上观点不一定全部正确,必须自己实践去证明才能真正相信。