《2.3 程序的选择结构--多重选择语句》教学反思

作者:老严 日期:2009-03-13 09:51:00


2009年3月7日在高一(2)班了本学期第七节课《2.3 程序的选择结构--多重选择语句》。本节课由恩格尔系数的计算从而判断一个国家或地区的贫富水平引入,说明IF语句在此类问题编程时的不足,然后学习SELECT-CASE多重选择语句。课堂练习设计为:输入月份,求当月的天数(层次一);输入年月,求当月的天数(层次二,涉及平闰年的判断)。

原教学设计是想做到精讲多练。但实际教学时,精讲没有做到。对于语句结构中的“表达式”、“表达式列表”学生不能完全理解其含义,以致独立编程时总是出现问题。所以,该强调的知识点还是要多次强调。学生主动学习的积极性远比我想象的低。根本原因还是考试制度。

练习设计的分层比较好,虽然能顺利独自编出第二层次的程序的学生非常少,个别班甚至没有,但还是有LZH同学在我指导下编出了较好的一个程序:

Private Sub Command1_Click()
 n = InputBox("输入", "月份")
10:   Select Case n
     Case 1, 3, 5, 7, 8, 10, 12
       Print "该月有31天"
     Case 4, 6, 9, 11
      Print "该月有30天"
    Case 2
     a = InputBox("输入年份")
      If a Mod 400 = 0 Or a Mod 100 > 0 And a Mod 4 = 0 Then Print "该月有29天", Else Print "该月有28天"
    Case Else
     n = InputBox("请重新输入", "该月份不符合")
     GoTo 10
  End Select
 
End Sub

其中用到标号“10”和GOTO转向语句,实现月份不符时的重新输入。

从这个程序看,学生在初中学习的VB并没有完全忘记,可以说他们中至少有一部分人不是编程的初学者。怎样实现其知识结构的重建,这是后面很长一段时间要思考的问题。

发表评论:
顺德华侨中学博客网——载入中...