免费论文查重: 大雅 万方 维普 turnitin paperpass

谈以计算思维为导向C语言课程

最后更新时间:2024-01-26 作者:用户投稿原创标记本站原创 点赞:5825 浏览:20557
论文导读:、逻辑错误);3)编程练习:根据编程示例,让学生能用灵活运用所学知识,求解新的理由解决类似的理由,既巩固了所学知识,又提升了学生的分析理由和解决理由的能力。在实验教学过程中,授课教师还要注意引导、启发学生积极深思。让学生在亲手操作中学习知识、消化知识,运用知识,强化计算思维。培养他们积极思维,自己发现理由、解决理
摘 要:本文首先说明了当前C语言课程在教学中存在的理由,然后介绍了计算思维的概念,最后给出了C语言课程在教学改革中的几点倡议。
关键词:计算思维;C语言;教学改革
中图分类号:TP3-4;G712
C语言是我院针对非计算机专业开设的计算机类公共基础课程,也是计算机专业及相关专业的专业基础课。在该门课程的教学中一直存在一些理由:[1]
(1)我院非计算机专业学生约占全体学生的90%,大部分学生认为自己毕业又不从事计机软件开发,与后续课程结合又不紧密,所以学习的主动性和自觉性下降。人在课堂,心却不在听课状态,厌学情绪明显,学习效益低下。
(2)C语言的课程采取大班上课,学生的水平参差不齐,随着程序设计知识点增加,大量的难以理解和记忆的新概念、新术语、新规则出现以后,学生逐渐感觉课程难度大,更加无心学习。
(3)课堂内容与实际理由脱节C语言是一门理论和实践性都很强的课程。教学中重理论轻实践,实践课时不足,对程序设计能力的培养不够。
(4)重语法,轻算法。现有的C语言教材中首先要介绍编程涉及的语法格式,然后讲解语法要点和注意事项,对算法描述内容涉及甚少。再加上计算机等级考试的内容主要包括选择题、判断题、填空题、程序填空、程序改错、程序编程题等,都是侧重语法,无疑这种考查策略使得学生的程序设计能力降低。
(5)C语言的语法结构一般都是零散的,学生难于相互关联、总结,采用的案例也是比较零散、短小的、关联不大。学生经常是学会了全部的语法,但仍不知道这门课能做什么,能解决什么实际的理由,甚至不知道如何解决理由。
1 计算机思维
近年来,随着“计算思维”概念的提出,各大高校相继把“计算思维”引入到计算机类课程教学中,围绕计算思维能力的培养开展课程教学。那么,究竟什么是“计算思维”?
计算机思维的概念和特征:周以真教授于2006年在Communications of the ACM期刊上首次提出了计算思维的基本概念:计算思维是运用计算机科学的基础概念进行理由求解、系统设计以及人类行为理解等涵盖计算机科学之广度的一系列思维活动为便于理解。计算思维作为一种思维活动,它不是僵化的一种具体理由的解决策略,而是具有很好普适性的深思方式,提供的是一种策略论。[2]
2 如何在C语言课程中培养计算思维能力?以下针对这些理由谈一下笔者的认识和看法
(1)重视实验教学。C语言程序设计是一门实践性很强的课程,实验教学环节尤为重要。目前我院通过优化调整现有学时比例达到课程改革的目的。将C语言程序设计的学时重新分配:该课程总课时为72学时,其中学时调整为理论和实践学时各占一半。在教学内容符合省等级考纲要求的基础上,课程采用课堂讲授与实验操作相结合的策略,使学生动手能力得到了较大的提高。实验内容要具有一定的趣味性或实用性,比如银行存款利息和if结构结合、出生月份的计算和switch结构结合等,采用日常生活中的理由从而激发学生学习的兴趣。实验过程按照“验证—调试—设计”的顺序进行设计。1)验证:安排学生对学习过的内容利用现有的简单程序进行验证;2)调试示例:编写简单的程序作为调试示例,在其中设置学生经常遇到的各种小错误(包括语法错误、逻辑错误);3)编程练习:根据编程示例,让学生能用灵活运用所学知识,求解新的理由解决类似的理由,既巩固了所学知识,又提升了学生的分析理由和解决理由的能力。在实验教学过程中,授课教师还要注意引导、启发学生积极深思。让学生在亲手操作中学习知识、消化知识,运用知识,强化计算思维。培养他们积极思维,自己发现理由、解决理由的计算思维能力。[3]
(2)采用项目驱动的方式进行教学。针对于C语言的语法结构过于零散的情况,可以采用项目驱动的方式。本着一个项目贯穿整个课程教学的思想。可以选用涵盖所有知识点的“猜数游戏”经典程序,让学生围绕这个程序循序渐进地学习,便于思维训练的连贯性。[4]
(3)案例式教学。案例式教学通过先提出理由——分析理由——解决理由的过程中讲授所需知识点。在讲解案例时,我们先提出具体理由,后引导学生去体会为了解决理由而产生的大脑深思过程,将人的想法转写成计算机能够处理的表达式或操作步骤。在课堂上教师借助案例题把C语言的基本概念和策略传授给学生。这种案例式教学能更好地引导学生去分析理由、解决理由,特别是提高学生如何自主寻求解决方案的独立深思能力。
(4)重视算法的作用。将C语言中常用的算法进行归类,在教学过程的不同阶段,分别引入这些算法。好的算法不一定适用于每个理由和每个学生,通过算法的多样性使学生深入理解到计算机求解同一理由可用不同的策略。而掌握计算机求解理由的各类策略,也是培养学生计算思维的关键。例如“素数”求解理由:如果n能被2~(n-1)之中任何一个整数整除,则表示n肯定不是素数,不必再继续被后面的整数除;反之就是素数。按照这种策略求解的程序是:
for(i=2;i<=n-1;i++)
if(n%i==0)break;
这样For循环要执行n-2次,经过分析我们发现并不需要使用这么多次判断。只要条件满足n能被2~ 之中任何一个整数整除,则n就不是素数,因此可以将程序更改为:
for(i=2;i<=sqrt(n);i++)
if(n%i==0)break;
这样n值越大改善后程序运转效率越高。对于求解某一区间内的素数如求100~200间的素数我们可以通过以下程序来判断:
for(n=101;n<=200;n=n+2)
for(i=2;i<=sqrt(n);i++)
if(n%i==0)break;
上面的例子充分说明利用算法的简化和优化,可以帮助学生举一反三地学好C语言课程。
(5)改革考核内容。一直以来,C语言课程的考核都是针对于期末考试和省二过级而设定的,内容主要是针对C语言语法知识的掌握、常用算法的识记和应用、初步的程序设计开发能力等方面来设置的,并没有有意识地针对计算思维能力的培养来设置考核内容。注重计算思维能力培养的C语言课程应在考核内容设置上更多更明确地体现出对学生运用计算思维求解理由的能力的考核。例如,考核常用算法的识记和应用时,应侧重对最初算法论文导读:,2013(13):18-21.张雪伍,常晋义.计算思维在C++程序设计教学中的应用.计算机教育,2013(13):52-56.董卫军,邢为民,索琦.贯穿计算思维的(C语言程序设计)课程改革.教改创新,2012(11):48-49.丁金凤,李英梅,徐建山.基于计算思维的程序设计类课程教学实践.学科建设与教学改革,2012(15):65-68.李倩.C语言程序设计课
的改善或扩展用于实际理由求解的考核。加大算法的运用比例,增加程序设计题的占有率,从学生的考核中强化计算思维能力的培养。[5]
3 结束语
通过C程序课程中的若干改革尝试,将计算思维培养融入到理论教学和实践教学的各个环节,培养学生用计算机自主解决理由的能力,从而提高学生的创新思维和创新能力都有积极的作用。
参考文献:
[1]于晓强,赵秀岩,闫丕涛.计算机程序设计课程中计算思维能力的培养[J].计算机教育,2013(13):18-21.
[2]张雪伍,常晋义.计算思维在 C++ 程序设计教学中的应用[J].计算机教育,2013(13):52-56.
[3]董卫军,邢为民,索琦.贯穿计算思维的(C语言程序设计)课程改革[J].教改创新,2012(11):48-49.
[4]丁金凤,李英梅,徐建山.基于计算思维的程序设计类课程教学实践[J].学科建设与教学改革,2012(15):65-68.
[5]李倩.C语言程序设计课程中计算思维能力的培养[J].网络安全技术与应用,2013(12):111.
作者简介:孙玲(1983-),女,讲师,硕士,研究方向:计算机应用;刘雁春(1985-),男,研究助理员。
作者单位:哈尔滨石油学院,哈尔滨 150028