APP下载

以培养计算思维为核心的C语言实践教学设计

2017-03-06张旭

教育教学论坛 2017年5期
关键词:C程序设计计算思维创新能力

张旭

摘要:计算机思维的深刻知识内涵正在被当今社会的发展进一步揭示,学生在高校中接受计算机课程的培养已经不仅是为了学会应用计算机,而是由此学会一种思维方式。根据当前C程序设计课程与计算思维之间的内在联系,提出以培养学生计算思维为核心的C语言实践教学设计案例。

关键词:计算思维;C程序设计;创新能力

中图分类号:G434 文献标志码:A 文章编号:1674-9324(2017)05-0252-02

一、背景

计算机专业的毕业生是否合格、是否有竞争力,主要是看培养出来的人才是否具有较强的计算思维能力及算法设计与分析能力。计算思维的培养是今后大学计算机课程深化改革的重要方向,合理定位大学计算机教学的内容,使之形成科学的知识体系,成为大学重要的通识类课程之一。

计算机技术已经应用于普适计算、金融工程、商业智能计算等非常广泛的领域,与多种学科之间的交叉和综合越来越深入。因此培养出的计算机专业人才应能够解决某一领域具体的计算问题,能够将计算机技术快速应用该领域。

二、计算思维

周以真教授认为计算思维是运用计算机科学的基本理论去求解问题、设计系统、理解人类行为等一系列的思维活动[1]。2008年,ACM(美国计算机协会)提出应将计算思维作为计算机科学人才培养的重要组成部分。桂林电子科技大学董荣胜教授论述了计算思维与计算机方法论的关系[2]。中央民族大学林旺阐明了软件应用教学中计算思维能力培养的教学设计原则[3]。

以往,计算机专业背景的技术人员在进行项目开发时,如果涉及其他学科,则被视为一个“编程者”,他们仅局限于计算机上编程,包括数据结构的设计、查询结果等具体程序代码的实现。但随着计算机应用的深入发展,计算机编程难度不断降低。计算机专业人员只有具有扎实的编程能力,同时擅长抽象和分解问题的计算思维,才能从单纯的“编程者”脱离出来。因此解决未来工作中来自交叉学科的问题,需要在计算机课程实践教学中融入这种计算思维,使计算思维成为学生职业技能的一部分。

进行计算思维训练对计算机人才培养是极为重要的,它不仅提高了教学质量,提高了学生解决问题的能力,使学生理解计算机的实现机制和约束,有利于学生进行发明和创新,更重要的是有利于提高学生的信息素养,提高学生处理计算机问题时应有的思维方法。通过对以计算思维培养为核心的计算机课程实践教学进行研究与实践,可以为计算机教学改革提供理论依据,并总结实践经验与教训。

三、C程序设计课程存在的问题

C程序设计课程是计算机专业学生进入大学后接触到的第一门必修计算机专业基础课,对学生后續专业课程的学习起到重要的基础作用。开设C程序设计课程的目的在于培养学生分析问题和解决问题的能力,为学生提供一个能够改善知识结构,培养计算思维与综合素质的平台。

C程序设计课程具有大量的语法规则,传统的教学方法所选的实验大多基于语法规则的说明和验证。这类实验方法往往使得学生在学过C语言后,不能活学活用所学语言知识,学生厌烦语法规则,使得教学效果越来越差。因此在C语言实验教学中融入计算思维,开发出适合的案例,使计算思维与现实问题相联系,增加C语言课程的趣味性,从而降低课程的学习难度,提高学习效果。

四、具体案例分析:谁家孩子跑最慢

问题描述:张家、王家、李家各有三个孩子在一起比赛短跑,规定跑第一名得9分,跑第2名得8分,依此类推跑第9名得1分。比赛结果没有同时到达终点的,张王李家的总分相同,并且也没有任何一家的两个或三个孩子获得相连的名次。已知第一是李家的孩子,第二是王家的孩子。问获得最后一名的是谁家的孩子?

思路:按题目的条件,共有1+2+…+9=45分,每家的孩子的总得分为15分。根据题意可知:获第一名的是李家的孩子,获第二名的是王家的孩子,则可推出:获第三名的一定是张家的孩子。由“这些孩子没有同时到达终点的”可知:名次不能并列,由“没有一家的两个或三个孩子获得相连的名次”可知:第四名不能是张家的孩子。

算法描述,程序流程如图1:

①按已知条件进行初始化,张家第一个孩子得7分,王家第一个孩子得8分,李家第一个孩子得9分。②遍历张家孩子在4到6分段可能的分数。③遍历王家孩子在4到6分段可能的分数。④遍历李家孩子在4到6分段可能的分数。⑤输出各家孩子的得分情况。⑥记录得分最后一名的家庭序号。⑦结束。

运行结果获得最后一名的是王家的孩子,如图2。

五、结语

目前,对计算机课程实践教学的计算思维研究成果还少之又少。在这种情况下,唯有自身努力,积极探索,制定既具有本校特色又可借鉴推广的、行之有效的计算机实践教学内容和课程体系,将计算思维融入到理论课教学和实验教学的各个环节,提高学生运用计算机知识,特别是知识抽象和分解问题的能力。才能为社会培养出具备高水平的思维、高水平的知识建构与知识迁移能力,高水平的实践和科研能力的计算机人才。

参考文献:

[1]周以真.计算思维[J].中国计算机学会通讯,2007,(3):77-79.

[2]董荣胜.计算思维与计算机导论[J].计算机科学,2009,(36):50-52.

[3]林旺.孙洪涛[J].基于软件应用的计算思维能力培养教学设计.中国电化教育2014,(11):122-127.

[4]陈国良,董荣胜.计算思维与大学计算机基础教育[J].中国大学教学,2011,(33):7-12.

[5]储岳中,秦锋,刘宏申.C语言程序设计理论与实践一体化教学的几点实践[J].计算机教育,2012,(12):22-25.

猜你喜欢

C程序设计计算思维创新能力
高中数学课堂教学中创新能力的培养
创新能力培养视角下的无机化学教学研究
基于创新能力培养的高职音乐教育改革探讨
程序设计课程中计算思维和应用能力培养问题研究
C程序设计趣味教学初探
接轨全国等级考试,探讨高校C语言课程教学改革
论中职生C程序设计学习兴趣的培养