APP下载

五年制高职C语言课程中算术运算符与表达式的教学设计与实践

2013-02-01阳,胡

职教通讯 2013年9期
关键词:总价算术表达式

杨 阳,胡 隽 雅

五年制高职C语言课程中算术运算符与表达式的教学设计与实践

杨 阳,胡 隽 雅

介绍了C语言课程教学中算术运算符与表达式的教学内容,分析了以编程实现“某超市收银系统对购物总价的计算”的任务驱动法及其教学设计与过程。

五年制高职;C语言;算术运算符与表达式;教学设计

C语言作为一种面向过程的结构化程序设计语言,具有非常灵活高效的特点,[1]已广泛应用于计算机控制、电子技术及嵌入式系统的开发设计中。然而由于五年制高职学生年龄普遍较小,知识基础相对薄弱,学习积极性、自觉性不高,在相对枯燥的语言面前不能产生足够的兴趣,[2]甚至部分学生产生了厌学的情绪,所以传统的C语言教学方法已不能满足实际教学需要。依据“以能力培养为核心,以实践教学为主线”的职业教育教学思想,[2]结合所授课专业的技能需要,有必要将所学C语言知识同解决现实生活问题相联系。下面就运算符与表达式的教学方法作一探讨。

一、运算符与表达式的教学设计与实践

(一)教学内容的选取与重点难点分析

根据C语言知识结构及多数教材参考,结合五年制高职C语言教学目的与教学内容,学生在经过C语言的基本概念和基本数据类型的学习后,将会进入到运算符与表达式这一小节的学习中,而算术运算符与算术表达式作为运算符与表达式小节内容的基础,同时,又能体现出高职教育的实用原则。通过对算术运算符与算术表达式的学习,学生既巩固了前期所学的C语言基本数据类型等知识,又能够基本具备完成简单程序设计的能力,同时,也增加了学生学习C语言的兴趣。

算术运算符与算术表达式学习在于学生最终能够完成简单算术表达式的整体程序设计并进行初步的程序调试。然而由于学生刚开始接触C语言不久,所了解与掌握的C语言知识较少且不扎实,对于新旧知识的联系不能充分认识,具有较大的畏难心理。

(二)教学方法设计

为克服学生畏难心理,实现新旧知识串联,增强学生学习C语言的信心,从而达到教学目的,在整个课堂教学过程中,可以采用以实现“超市收银系统对购物总价的计算”的程序设计的任务驱动方法。

首先结合同学生活实际,通过角色扮演生活中购物时所遇到的问题引出该任务,然后引导学生总结出计算物品总价的一般性公式——算术表达式,随后教师围绕该公式的程序化实现,讲授新的知识点——算术运算符,并联系已学C语言基本数据类型、变量定义与赋值等知识分析该程序的基本实现步骤。在上机调试时,对于程序编译与运行的错误,鼓励学生以小组讨论、协作纠错。在上机调试结束后,各个小组进行简要发言并总结所遇问题及解决方法等。最后,小组小结、教师点评与归纳分析学生在程序设计与调试时的共性问题,启发学生进行一般性算术表达式的编程设计。

(三)教学过程开展

1.任务引出。教师首先通过PPT展示一张水果摊卖水果的图片并给出当下一些水果的价格(如苹果5元/斤,香蕉2元/斤等),然后请一位同学扮演老板,老师扮演顾客。

“顾客”提问:老板,我买了2斤苹果、2斤香蕉,一共多少钱?

“老板”回答:14元。(此过程可以选择不同学生、不同的水果购买组合提问)

老师(对刚刚几位扮演老板同学)提问:你们是如何计算的?

学生:口算、计算器等。

教师:各位“老板”计算都很快、很准确。假设几年之后,你的水果生意规模扩大了,开了一个超市,这时我又来到你这里买东西,这一次,我买了牙刷、牙膏、纸巾、饮料……这时你还能很快且准确的计算出所有物品的总价吗?

学生思考……

教师小结:对于多数量、多品种物品的总价计算,若仍靠口头或计算器等计算方式则会既耗时又易出错。同时引导学生回想现实生活中的超市是如何对顾客所购物品进行总价计算(PPT此时展示一张超市自动收银台及其界面的图片),从而抛出收银机是如何实现快速计算物品总价的疑问,引出课题任务。

2.任务分析与分解。教师提供一张某超市购物单,请各小组核算该购物清单上收银机所计算出的总价是否正确。

在给学生一定计算时间后,教师请某一小组说其所计算的总价是否与该清单上的总价一致,并请别的小组判断他们的结果是否正确。教师再次对验算出总额的小组提问是如何计算出总额,引导学生一起概括出计算多种数量的不同物品的总额公式:

物品1的单价×数量1+物品2的单价×数量2+……物品n的单价×数量n=物品总价

教师点评:收银机能够实现物品总额的计算,其实就是实现该公式(即算术表达式)的程序化表达。

(1)C语言程序框架。#include/*头文件,printf等常用函数的函数库*/

(2)算式表达式的程序实现(运算符的知识点)。①算术运算符:教师通过对计算物品总价的公式中有哪些运算符的提问引出算术运算符(+、-、*、/、%), 由于加减乘除这4种算术运算符学生比较熟悉,着重介绍%——取余数运算符,通过举例与小题练习的形式促进学生对该运算符的掌握。②赋值运算符(=):教师可以以文字处理软件中的复制与剪切的概念讲解,使得学生便于理解赋值的概念。③圆括号():在进行数学表达式运算时用法和数学中圆括号一样。④在学过以上几种运算符后,教师再通过一个算术表达式中同时出现所讲的这几个运算符,应该先算哪一个后算哪一个的具体设问,引出此几种运算符的优先级关系,并举例说明之。

(3)算式表达式的程序实现(表达式中运算对象的知识点)。教师对所总结的总价计算公式中运算对象有哪些的提问与分析(物品1、2……的单价是不是可能随着市场价格变动的?数量1、2…...对于每个购买东西的人而言是不是也有可能不同?),引出在运算符前后的这些运算对象与先前所学的变量概念知识点的联系,从而根据变量的三要素(变量类型、变量名和变量值)知识来讲解分析其在该程序实现中的步骤:①首先根据变量名命名规则在内存中定义一些变量用来存放不同物品的单价与数量以及最终的总额,如danjia1,shuliang1;②由于这些物品单价有可能不是整数,所以给存放物品单价的变量类型定义为实型变量float;而物品数量应为正整数,所以给存放物品数量的变量类型定义为无符号的整型变量unsigned int;最终总额也有可能不是整数,所以给存放总额的变量类型也定义为实型变量float;③各个变量空间里所“住”数值为各个变量所对应的对象,如物品1数量这个变量空间里“住”的是物品1的数量值:shuliang1=2。最后,课堂开始时所提出的总价公式可由学生自己总结出在C语言中可表示为:

(4)算式表达式运算结果的输出。教师通过学生已学习过的C语言入门程序——“hello world!”,简要说明如何通过printf函数将某一个或几个变量值输出到电脑屏幕(在后续的学习中还有专门介绍printf函数的用法)。

3.任务实现。在讲解与分析完该程序的实现过程后,教师鼓励学生依据所讲授的步骤在小组内以自由讨论的形式来完成该程序的编写,老师则对学生在完善与调试程序中出现的问题给予指导。对于完成较快、程序可读性较高的小组,可再给其介绍printf函数的相关知识,以美化输出界面,增强学生的学习兴趣。

4.任务总结。在任务小结阶段中,先由教师对任务完成较好的几组同学加以表扬并予以记录,希望别的小组在今后完成其他任务时再接再厉,然后请各小组讲出其在刚刚完成任务过程中所遇到的一些问题及解决方法,未能解决的问题其他小组可曾遇到及可否解决等等。对于各小组的共性问题,老师集中点评,个别问题则课后再进行答疑。最后,在本次任务基础上加以适当变形作为课后习题,巩固学生对一般算术表达式的编程计算的理解与掌握。

二、教学反思

(一)激发学生学习兴趣

囿于高职学生的学习习惯、方法加之C语言学科的特点等因素,造成学生在学习本门课程时,学习动力不够,学习兴趣不高,这就要求教师在进行知识传授时不可一味遵从固有授课模式,应根据不同知识点的讲授选择适当教学方法、了解与发掘学生兴趣点(如大多数学生喜欢的游戏、QQ等话题),联系学生已有生活认知融入趣味实例,有时将会取得事半功倍的效果,从而最终让学生变得乐学、想学。

(二)培养学生动手能力

对于高职学生来说,动手解决问题的能力至关重要。[3]而C语言又是一门实践性很强的课程,需要通过不断的上机编程与调试来积累。为充分保证每一位学生进行动手编程,提高动手能力,笔者尝试实施以下方法:(1)采用分组协作,各组组员自由组合,辅以老师微调,组员分工由各组讨论;(2)各组任务并不完全相同,以小组为考核单位;(3)鼓励组间竞争,团队合作。对于抄袭等现象,则采取一定的处罚方式(如小组得分打折计算,组长得分相应减少等);(4)课程最终成绩评定时,上机动手编程占一定的比例分,每次编程题完成后及时上传到教师机。

C语言课程教学质量的优劣关系到相关专业学生对本专业知识的掌握及影响着后续课程的再学习能力,因此,充分调动学生学习兴趣,做到充分发挥教师的主导作用和学生的主体作用与培养学生实践能力相结合,对于每一位C语言教师来说都是一个值得探索的问题。本文以算术运算符与表达式教学内容为例,展示了C语言课程的课堂教学方式,具有一定的成效性。

[1]黄雄波.高职C语言课程中循环结构的教学设计与实践[J].计算机时代,2012(5):49-51.

[2]陈峰.五年制高职应用电子专业C语言教学浅析[J].科教文汇,2010(10):170-171.

[3]崔娅萍.高职C语言教学探讨与研究[J].中国科教创新导刊,2010(28):55-57.

G712

A

1674-7747(2013)09-0040-03

杨阳,男,江苏联合职业技术学院南京分院助教,硕士,主要研究方向为检测技术与自动化装置。

[责任编辑 陈国平]

猜你喜欢

总价算术表达式
灵活选用二次函数表达式
表达式转换及求值探析
浅析C语言运算符及表达式的教学误区
“刚需”入市带动广州楼市进入复苏期
担心等
算算术
学算术
小狗算算术
巧用一元一次不等式解决实际问题
议C语言中循环语句