浅谈VB课堂教学中的“假摔”方法(二)
对于Val()函数,它的功能就是把字符型数据转换成数值型的数据,由于Inputbox()函数的结果是字符型,只有转换成数值型后才能进行数值运算,所以要使用Val()函数的转换功能才能求出三角形的面积。至此,通过学生的讨论分析,既让学生能深刻领捂了此函数的真缔,又让学生对此函数结果类型有个磨灭不了的记忆,以后再要用Inputbox()输入数据,并要对其结果进行数值运算时,自然会在此函数外加上Val()函数了。
请编程打印出如图3所示的图形
分析:此图形共5行,每行的个数为奇数变化,且依次增加,每行的首个位置依次左移一个位,由此很多学生首先认可的程序设计代码为:
For i = 1 To 5
Print Tab(6 - i);
For j = 1 To 2 * i - 1
Print Str(i);
Next j
Print
Next I
然而,这个程序运行后的结果图形为图4。
这个“错位”的图形出来后,学生一片哗然,我让学生进行分析,大部分学生认为:在循环结构中,数据“i”和“j”这两个循环变量的变化范围有问题。但是当我提示学生把“Str(i)”改为“*”时,图形又变成了如图5
这种图形形式与结果图形很相似了,至此学生也知道了不是循环变量的问题,那么剩下的就是数据类型的问题了。最后,教师写出正确代码为:
For i = 1 To 5
Print Tab(6 - i);
For j = 1 To 2 * i - 1
Print mid(Str(i),2,1);
Next j
Print
Next I
解释程序:由于Str()函数在把数值型数据转换为字符型数据时,会在前面加一个空格,这就是我们会产生错位图形的原因。至此,学生对此知识点产生深刻印象,此后学生再遇上类似问题就很少再出错了。
浅谈VB课堂教学中的“假摔”方法(二)由毕业论文网(www.huoyuandh.com)会员上传。