Visual FoxPro实际编程中的另类方法
2018-02-25蒋超
蒋超
摘要 Visual FoxPro程序设计和其它一些程序语言差别不大,最大的差别点在于Visual FoxPro很多语句是针对表的,因此有时候借助表我们可以完成一些意想不到的效果。本文主要针对一些传统编程实例,不按部就班,采取一些别样的解决方法,去供读者思考体会。
【关键词】VFP编程 数据排序 图形显示
一直从事学校计算机相关专业对口班的数据库应用基础的教学工作,可谓边学习、边研究、边教学。数据库是比较难的一门学科,但是它也是比较让人着迷的一门学科,难主要体现在四个方面,
(1)学生初次接触编程语言,不容易理解;
(2) VFP的学习是从基础开始,前面的知识比较枯燥繁琐,学生不知道每个操作或命令到底有什么用处,因此难以记忆体会;
(3)学生逻辑思维的能力不强,遇到问题不知道如何下手;
(4)学生普遍学习兴趣不大,学习无动力。
而着迷则是指真正学进去入门之后。你会发现VFP可以编写各种程序,制作各种应用程序,只要你对电脑有兴趣,有想法,想制作各种好玩的,有用的小软件,VFP都可以帮你实现,并且面向对象的應用程序开发,对于新手来说将更加容易,且更加着迷。
对于计算机相关专业对口班的学生来说数据库应用基础尤为重要,因为数据库应用基础为安徽省对口高考计算机相关专业的必考科目,且所占比重较高,特别是程序编写,不管在理论考试和技能测试中都会出现,且分值较大。数据库应用基础VFP的编程不仅仅需要扎实的基础知识,而且还需要较强的逻辑思维能力,当然,更重要的是解决问题的方法。以下将针对几个常规的程序问题,提出本人自己研究的另类方法。
1 数据排序的另类方法
对于一组数据的排序,常用的方法就是“冒泡”排序法,当然了还有插入排序,合并排序等等,这些方法对数据进行排序很实用,但是对于中职学生来说理解起来难度很大,即使理解了,也很难在实际的程序设计中写出代码。因此,对于VFP程序设计中的数据排序,我也思考总结了一些学生容易理解,也确实能够解决问题的方法。
例1:三个数排序。任意输入三个数,按从大到小排序。
思路:找出最大和最小的数,中间的数就是这个三个数的和再减去最大和最小的数。
具体实现代码(如图1所示)。
当然,如果黄色填充区域还不能理解,那么我们就借用函数MAX()和MIN()来修改此区域代码。具体实现代码(如图2所示)。这样修改之后的程序,相信基础再差的学生基本上也都能理解透彻了。
例2:三个以上的数排序。任意输入10个数,按从大到小进行排序。
思路:冒泡等排序方法就不提了。我们来说特别的方法,VFP中重点学习的是表,我们知道表,也知道如何对表中数据进行排序,那么如果我们把输入的数据放入表中,再排好序后输出就可以了。
具体实现代码:
这样的解决方法肯定简单、方便、容易理解。学生只要对表的操作能够理解深刻,那么排序再也不需要冒泡来解决。
2 图形题的两种解决方法
图形题的解决方法一般都选择循环语句加显示数据的两个命令(?换行和??不换行)来解决。但是有些时候格式化的输出方法也是解决图形问题的一大帮手。
例:输出如图形(如图3所示)。
传统方式(如图5所示)这种方法解决简单,但理解起来稍显复杂。此时还可以考虑格式化输出方法。
格式化输出方法(如图4所示),把每个点的坐标标号,然后统计规则。(注意15代表1行5列,24代表2行4列…)
规则:两个坐标和最小为6,最大为14;两个坐标差最小为0,最大为4。
具体实现代码(如图6所示)这种解决问题的方法是否让你豁然开朗呢?
总之,解决问题的方法千变万化,条条大路通罗马。不管是学生的学,还是老师的教,都不能干篇一律的来,针对知识要先学习好了解清楚,再体会深刻理解,最后在理解的基础上能创新的去创新,能升华的去升华。授人以鱼不如授人以渔!
参考文献
[1]周察金,数据库应用基础VisualFoxPr06.0(第3版)[M].高等教育出版社.2015.