APP下载

《C语言程序设计》课程中的课程思政教学设计研究

2021-03-27王晴

电子元器件与信息技术 2021年7期
关键词:运算符C语言程序设计C语言

王晴

(徐州开放大学,江苏 徐州 221116)

0 引言

2016年12月,习总书记在全国高校思想政治工作会议上强调,要“把思想政治工作贯穿教育教学全过程,实现全程育人、全方位育人”[1],该思想给从事高等教育的所有教育工作者以重要的启示。教育强则国家强,人才兴则民族兴。教师在教授专业知识的同时,更要注意学生人文素养的培养,坚定学生的理想信念,点燃他们的家国情怀,并教育学生要恪守职业道德的底线,在学习和工作中弘扬工匠精神,敢于奉献社会。

1 高职院校学情教情分析

作为一名高职院校的一线教师,面对的这些学生,一方面是刚刚从”两耳不闻窗外事,一心只读圣贤书”的高中埋头苦读过来,对知识以外的世界认知甚少;另一方面,这些学生经过三年的大专学习,大都直接进入社会,将在社会的各个基层领域担当重任。因此在课堂中引入思政,在传授知识,提升学生学习能力的同时,责无旁贷的传播正能量,引领学生坚守四个自信[2]。把“爱国之情、强国之志、报国之行” 融入、贯穿到所授课程中,是每一位高职院校教师的责任。

对于一名工科专业的教师来说,课程思政是一个全新的挑战。思政的融入不能牵强,不能只讲故事,要求教师不仅要遵循课程本身的学习和教学规律,还应积极思考,充分挖掘本专业、本课程中的思政点,让思政教育的融入“润物细无声”。

因此,思政和原课程知识融合点的设计,是课程思政成败的关键因素。由于学习和教学目标的差异,课程中并不是所有知识点都可以挖掘出思政融合点,不能强行“融合”。合适的融合点能使教学事半功倍,而牵强的融合点则会适得其反。

本文以所授的《C 语言程序设计》课程为例,通过对课程特点的分析,对课程内容的仔细研判,深挖思政元素,找到课程中合理、合情、合适的思政融合点,探索出该课程融入思想政治教育的实践方法切实保障“课程思政”的教学效果,为高职院校立德树人建设添砖加瓦[3]。

2 《C语言程序设计》课程思政融入教学设计

《C语言程序设计》是一门面向过程的计算机高级程序设计语言,它的发展历时久远,可以说贯穿了计算机程序设计发展的整个过程,它不仅阐述了程序设计的基本概念,还蕴含了程序设计的基本思想,是理工科学生,在进入大学的初始阶段,最重要的一门专业必修基础课。

该课程介绍了 C 语言的基本概念和程序设计的思想和方法。课程以编程思想为主线,先从历史、发展、特点和作用等方面介绍C语言,引入程序设计的思想,逐步介绍C的语法结构以及代码的编写,最后使学生理解编程思想,掌握编程规则,实现代码编写。

在以前的教学中,教师将重点放在如何设计一个个有趣生动的代码示例,来将各个小知识点串起来,着重点是在提高学生的学习兴趣方面。现在,如何在提高学生学习兴趣的同时,从小知识点解锁出大思政,成为教学设计新的重点。对高职院校的学生而言,程序设计可能并不是毕业后工作的方向或重点,但是若能将程序设计中的核心概念——变量、函数、循环、数组等和程序设计的方法论——自顶向下、逐步细化、规范化书写、反复调试等,迁移到他们将来所从事的工作中,则是可以受益终身的。

下面就详细介绍,如何从《C语言程序设计》中一个个的小知识点中,解锁出大思政的。

2.1 从C语言的特点中解锁

C语言运算符丰富,数据类型丰富,语法限制不严格,程序设计自由度大,允许直接访问物理地址,执行效率高,可移植性好。因此很多系统的内核都由C语言编写,比如windows操作系统的内核层就是以C语言为主的;还有让国人为之振奋的,华为自主研发的鸿蒙操作系统——亮剑,其内核也是C语言编写的。

这里通过对鸿蒙系统的介绍,激发学生的爱国情怀,通过华为展现出来的韧劲、力量、速度,让学生学习国人的匠心精神的同时,也激发了学生的学习热情和爱国、强国、报国之情。

2.2 从C语言在高级程序设计语言中的地位解锁

在高速发展的计算机领域,一个程序设计语言可以存在近五十年,且仍旧在很多领域起主导作用,一定有它独特的魅力。近几年新兴的物联网领域,所涉及到一些底层传感器数据的采集,还有嵌入式应用系统的开发,都离不开C语言的身影。年逾五十的C语言,在TIOBE官方发布的2019年度编程语言排行榜中,仍旧荣登榜首。

给旧知识融入新信息,增加学生对专业发展的了解,提高对专业相关信息的关注度,激发学生的好奇心,提高学习兴趣,为后续的学习创造一个良好的开端。

2.3 从C语言的应用领域解锁

向学生展示本年度他们的师哥师姐们,在参加大学生创业大赛中的科技创新项目,如何运用 C 语言嵌入式编程制作一款手机APP,通过人脸识别来进行物业服务和小区的微商管理。

从学生身边的人事出发,激发学生的学习兴趣,增强学生的学习信心,激励学生的创新热情。

2.4 从运算符的优先级中解锁

在介绍运算符的优先级时,隐喻处世之道。做事要分轻重缓急,不能一味的“讲究平等”,合理安排时间,什么是最重要的事,什么是最紧急的事,协调好两者的关系,优先解决最紧迫的事,才是处事做事之道。

2.5 从C语言中丰富的小小运算符解锁

C语言蕴含丰富的运算符和表达式。运算符虽渺小,但组成表达式后,能对程序运行的成败和效率起到决定性的作用。

由此让学生明白大和小的辩证关系,体会大和小的智慧,以及大和小的互转换性。不要忽略自己身上一些自认为微不足道的、小小的缺点,总是原谅自己的粗心大意,要注重细节,常常细节决定成败。比如美国一次空难的原因竟是因为一个小小的螺丝钉;著名的泰坦尼克号海难之所以没有抵过冰川的撞击,只是因为轮船前方的龙骨上有一条细如发丝的裂纹;还有蝴蝶效应等等,这些都体现了小中见大的思想,告诫学生们一定要关注细微处才能获取成功[4]。

2.6 从空字符“”中解锁

空字符是C语言中的特殊字符,在内存中以一串0进行存储,貌似没有什么用处,有时可有可无。但如果把它放在字符串的末尾,作为字符串的结束标志,其内涵便丰富起来,在对字符串的处理方面作用重大,可以说所有字符串的处理都离不开空字符。

由此解锁出,高职院校的学生不要因为一次高考的失利,就轻看自己,要找准目标,摆对位置,相信天生我才必有用,爱岗敬业,在平凡的岗位上一样可以施展才华,实现人生的再次腾飞。

2.7 从逻辑运算符和关系运算符中解锁

逻辑运算符和关系运算符在程序设计中起到很重要的作用,它们构成的条件表达式引领程序的走向,决定程序的结果。在这里举例时可引用韩信点兵的案例:一次大战后,士兵死伤众多,敌军约500人又来突袭,此时韩信必须要急速点兵快快迎敌,他命令士兵每3人一列则余1人、每5人一列则余2人、每7人一列则余4人,于是立刻就知道手下还余多少士兵了。还可引用《孙子算精》中的孙子定理:有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二。问物几何?

通过引用我国古代先进的数学思想,在引领学生文化自信的同时,增强了学生的民族自豪感。

2.8 从选择结构中解锁

选择结构采用启发式教学方法,向学生展示行进中的一个岔路口,有两个出口方向,驾驶员需要根据自己的目的地,来选择一条路径,从而引出选择结构的流程和格式。

选择结构影射了人生前进的道路,其中存在多种选择,择业、择友、择偶等,通过选择结构功能和流程的学习,引导学生树立正确的价值观、人生观和世界观,养成良好的职业道德。

2.9 从用while循环计算累加和中解锁

循环的基本思想之一,其实就是用简单的规律,来解决复杂的问题。在讲解累加算法的时候,可以举一个有趣的例子——“棋盘上的麦粒”,国王感觉农夫所要的奖励很微小,欣然答应,可通过实际计算,却发现农夫所需要的麦粒数竟然是个天文数字。

从这个示例,以及循环累加的算法中,可以引出积少成多的道理。教育学生不要小看水滴石穿的力量。2013年11月,习总书记在湖南考察时,首次提出“精准扶贫”的重要指示,经过短短几年的努力,全国各贫困县区逐步脱贫摘帽,为实现“中国梦”,进而实现中华民族的伟大复兴更进了一步。使学生在掌握循环累加算法的同时,更加坚定了“制度自信”[5]。

2.10 从求解最大公约数的枚举算法中解锁

最大公约数也是C语言程序设计中的重要算法,通常有枚举法和辗转相除法两种算法。其中枚举法的规则很简单,就是尽力将满足条件的结果都列出来,然后进行逐个测试,虽然计算量很大,但对计算机的计算速度来说,一般可忽略不计。这里可以让学生讨论:当我们在ATM机上取款时,为什么系统要限制密码输入的次数?如果不这样限制,会有什么后果?

通过讨论,使学生了解枚举法在密码破解方面的实际应用,培养学生良好的信息安全意识,树立正确的网络安全观。

2.11 从利用数组解决实际问题中解锁

数组给计算机中的复杂数据问题提供了解决办法。原本难以解决的问题,通过数组的定义,配合循环,就可以轻松的解决。

数组就像是我们工作和学习的团队,数组中的每个元素就像是团队中的一个成员,数组中的元素团结一致,就能使其发挥出超常的能力。由此引申出团结协作的重要性,团结合作可以提升整个团队的灵活性,增强团队的凝聚力,任何困难在团队面前终将被克服。

2.12 从使用二维数组求解“杨辉三角”中解锁

首先这个算法以中国人的名字来命名,本身就是能够引领学生文化自信的一个融合点。从古至今,中国人都为世界做出了巨大的贡献。杨辉三角不仅仅是一个数字序列,它还蕴含了很多奥秘。这里可以将白居易的《一七令·诗》展示出来,让学生体会数学与文学的相映成趣。并告诉学生,中国是拥有五千年历史的古国,本身就有很深的文化积淀,不必崇洋媚外。

2.13 从指针变量的定义中解锁

指针是整个C语言教学中的重点和难点,也是C语言精髓所在,使用指针可以使程序直接指向内存空间,可以使程序更加精炼、高效,但是从历届学生的反馈来看,大家都认为指针较难掌握。这里,通过启发式教学,结合动画演示,从门牌号入手,认识计算机如何为变量分配内存空间,并阐述变量的直接访问和间接访问[6]。

在进行教学难点的教授时,不仅要将知识细化,有趣化,易理解化,还要对学生们的健康思想之路进行正确的指引。引导学生们不怕难、不畏难,不断的更新知识、转变观念,更正态度、为成为一个让自己、让学校、让社会肯定的人做出努力。

大学是学生进入社会的预备阶段,他们的思想日益成熟,一味的说教,填鸭式的灌输大道理,通常会适得其反。课程思政的提出如醍醐灌顶,一件小事情,一个小故事,一则小新闻,一个大道理。日常的教学变得生动有趣,枯燥的知识和严肃的说教饶有趣味的结合在一起,相得益彰,使教学效果事半功倍。

3 结语

程序设计类课程思政融入点的挖掘,要侧重于培养学生的人文素养能力,要将蕴含中国传统文化的元素嵌入到程序设计案例中去。思政点的融入使教师将枯燥的理论与中国传统文化、哲学思维、匠心精神、专业素养、职业道德等多方面结合,使思政与专业教学同向同行,让课堂更加有深度、有温度。从而坚定了学生的文化自信和民族自信,提升了理工科学生的人文素养,为完成“全程育人、全方位育人”的育人目标做出了贡献。

猜你喜欢

运算符C语言程序设计C语言
老祖传授基本运算符
基于Visual Studio Code的C语言程序设计实践教学探索
用手机插头的思路学习布尔运算符
51单片机C语言入门方法
基于C语言的计算机软件编程
高职高专院校C语言程序设计教学改革探索
以“学生为中心”的《C语言程序设计》教学设计探究
基于翻转课堂的《C语言程序设计》课程教学系统的实现与研究
浅谈《C语言程序设计》课程的教学改革
《C语言程序设计》课程的教学改革与实践