c语言程序设计常用思维,C语言程序设计中计算思维的思考①

王鑫 李万军

dfb33cf07ffc041aa455bb43325f5026.png

摘   要:计算思维是运用计算机科学的基础概念去求解问题、设计系统和理解人类的行为。本文归纳了计算思维在C语言程序设计中的体现,可归纳为抽象计算思维、自动化计算思维和并行计算思维三种。针对计算思维的特点,提出了C语言程序设计课程教授过程中提高计算思维的方法,有益于学生借助计算思维进行编程思维训练,对所学知识进行融会贯通,同时提高了课程教学改革的效果。

关键词:C语言程序设计  计算思维  教学改革

中图分类号:TP311                                 文献标识码:A                        文章编号:1674-098X(2019)09(a)-0077-02

全球范围内的趋势是,编程能力被视为未来社会的通用底层能力,是“新的素养”,甚至被称为“新读写能力”(The new literacy),人人必须具备。现在小学、中学生开始已经开展适合的编程课程。

学编程的本质是掌握计算思维。这是一种面向未来的核心认知能力。2006年3月,时任美国卡内基·梅隆大学(CMU)计算机科学系主任、现任美国基金会(MSP)計算机和信息科学与工程部(CISE)主任的周以真(Jeannette M.Wing)教授,在美国计算机权威刊物《Communications of the ACM》上,首次提出了计算思维(Computational Thinking)的概念:“计算思维是运用计算机科学的基础概念去求解问题、设计系统和理解人类的行为。它包括了涵盖计算机科学之广度的一系列思维活动[1]。”

陈国良院士与李廉教授通过整合得出了3种较为典型的科学思维:也就是用观察和整理为特性的实证思维、用推演为特性的逻辑思维、再者就是抽象与自动化的计算思维。在这3种方式中,计算思维属于计算机类课程所主修的思维方式。

C语言作为当今常用编程语言,在程序设计过程中注重培养逻辑,算法,数据,系统,解决问题,出错调试,以及新的计算机技术等能力。

1  计算思维

计算思维的体现可归纳为抽象计算思维、自动化计算思维和并行计算思维三种。

1.1 抽象计算思维

抽象计算思维是计算思维的关键,主要体现在实际需求到程序语言的设计过程。是自己对于问题的抽象能力的练习,即从抽象问题到实际进行编码或者设计程序解决问题的一个能力。面对一个问题,经过思考后,最后将解决这个问题的思路用计算机能理解的方式表达出来,其中“问题”、“思考”以及“表达”是编程最关键的地方。

1.2 自动化计算思维

C语言程序设计中三大基本结构,顺序、条件和循环三种结构支撑了所有程序。依托三个基本结构可以实现所有程序自动化设计。三个结构像盖房子的砖块,互相叠加累积完成整个程序。自动化程序设计过程中的逻辑训练,算法实现也是学生着重需要提高的部分。

1.3 并行计算思维

cpu间断性的并行执行多个任务,在并行的情况下效率才能保证。多个任务并行执行的优势在于:降低资源消耗,提高相应速度,提高任务的可管理性。学生往往习惯于顺序程序执行,当复杂编程要求多线程设计时,在理解、设计及代码实现上都存在很大困难。

2  提高计算思维的方法

2.1 驱动式方法提高计算思维能力

学生表现出的上课听懂教材看懂,只是表面上比较肤浅的理解,老师在进行教学开始之初,有目的的引导学生学习编程。将C语言课程教授内容中与专业课程及后续课程关联很大的部分提前做好充分的课程准备,针对计算思维加强对学生的锻炼。在教学过程中围绕提前准备的教学问题,积极引导学生在C语言程序设计中合理应用计算思维[2]。

2.2 应用性方法提高计算思维能力

任何教学过程是教师与学生互动的过程,教学过程中任何环节都会影响教学质量[3]。教师可以根据本校本专业的特色,结合学生的接受能力选择合适的教材。教师在教授过程中使用与实际应用关联较大的例题,使用适合学生的教学方法,并且在课程进行过程中,根据接受程度,对教学方法进行动态改变,以实例展示的方式将计算思维融入其中,让学生当场学会应用计算思维。

2.3 以项目为核心提高计算思维能力

教师引导学生完成课程实践教学时,要以项目为中心,将课程教学中计算思维的提升作为教学的重要目标。项目的选择很重要,实际项目从难度及复杂度上一般不适合直接使用,教师需要对实际项目重新编排,组合,去繁,整合成适合学生的教学项目,但这个新项目又是很有实践性的,使学生更感兴趣[4]。使用计算思维设计C语言程序设计,课上及课下注重实际编程能力、应用能力和创新能力。借助算法的构建和程序流程图的使用,在应用层进行综合应用训练。通过“任务驱动”,使所学的知识融会贯通,锻炼学生分析和解决问题的能力,帮助学生提升工程实践能力[5]。

3  教学实例

例题1:计算1!+2!+3!+...+20!

本例题有两种解决方法,可以用两层循环来完成,学习函数调用后,可以用函数递归方法解决,循环及递归思想是计算思维的重要一方面。教师应该善于启发引导学生从多角度、多维度思考问题的解决方法。

例题2:设计一个学生成绩管理系统,学生信息的输入部分程序设计。

随着学习的深入,保存学生输入信息的变量由普通多个浮点型数据到一维数组,到二维数组,最终设计成结构体数组,逐渐增加难度,但也为问题的解决提供了更合理、更丰富的方案。学生输入信息的变量改变在表1中。

4  结语

综上所述,针对归纳总结的计算思维的特点,提出了C语言程序设计课程教授过程中提高计算思维的方法。在C语言程序设计过程中教师引导、学生逐步深入借助计算思维进行编程思维训练,对本课程以及其他课程的学习是非常有益的。

参考文献

[1] Jeannette M Wing.Computational Thinking[J].Communications of the ACM,2006,49(3):33-35.

[2] 范兴亮.C语言程序设计课程中的计算思维探析[J].无线互联科技,2017,4(8):67-68.

[3] 赵桃林,杨民力,王育华.功能材料专业《化学电源》课程教学方法探讨[J].河北理科教学研究,2017(1):47-49.

[4] 顾丽红,丁淑妍等.面向计算思维的蒙特卡罗C语言程序设计案例探究[J].计算机教育,2018(1):105-111.

[5] 叶建龙.任务驱动法在C语言教学中的应用[J].廊坊师范学院学报:自然科学版,2010,10(3):132-136.

参与评论 您还未登录,请先 登录 后发表或查看评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:数字20 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值