我想请教一个VB问题,谢谢帮助我的人

来源:百度知道 编辑:UC知道 时间:2024/05/01 21:21:35
Private Sub Form_Click()
Dim a1 As Integer, a2 As Integer
a1 = 5: a2 = 10
Form1.Print "交换"; a1; a2
Form1.Print "得"; a2; a1
End Sub

和这个程序Private Sub Form_Click()
Dim a1 As Integer, a2 As Integer, t As Integer
a1 = 5: a2 = 10
Form1.Print "交换"; a1; a2
t = a1: a1 = a2: a2 = t
Form1.Print "得"; a2; a1
End Sub 一个加了t 一个没有加,但结果是一样的,那为什么要加呢

t 在这个程序中是一个中间变量,起到是一个传递某一个过程值的作用,并且可以对该过程值进行储存,对于这个程序来说有没有t对于程序的运行无关紧要,并且以现在计算机的速度来说多大的程序也不会因为多个t就对程序的运行速度造成极大的影响.那么为什么还要加呢?因为这个中间变量可以对原数据进行储存,当原数据修改时其值可以等同原数据的值,起到缓存作用,对于数据恢复,撤销都有一定作用.

出于对程序代码简单易读的角度上说第一要好一些.
但是第二种写法可以完成一些第一种写法所做不到的功能.

是一样的 小程序无所谓 大程序运行速度就又区别了

t = a1: a1 = a2: a2 = t相当于以下:
t = a1
a1 = a2
a2 = t
这三条语句
t = a1 ‘t = a1=5
a1 = a2 ’a1=a2=10
a2 = t ‘a2=t=5
所以结果是a1=10 a2=5

Form1.Print "得"; a2; a1 这句应该是Form1.Print "得"; a1; a2 才对

加一个t是用交换法,将a1,a2数据交换,这在很多算法中有用,而你第一种方法没有实现两个数据交换,只是你打印出来的显示顺序变了,而第二种才是真正的交换数据。