
把下面的代码复制到窗体的代码里,运行后单击窗体就可以了。
private
sub
form_click()
dim
a()
as
integer
'空数组
dim
n
as
integer
dim
i
as
integer
dim
max
as
integer
'数组最大值下标
dim
min
as
integer
'数组最小值下标
dim
t
as
integer
n
=
inputbox("输入数组元素的个数:")
redim
a(1
to
n)
'重定义数组大小
for
i
=
1
to
n
a(i)
=
inputbox("输入第"
&
i
&
"个数")
next
"数组的初始值:"
for
i
=
1
to
n
a(i)
&
"
";
next
max
=
1
'假定数组第一个元素为最大值
min
=
1
'假定数组第一个元素为最小值
for
i
=
2
to
n
if
a(max)
<
a(i)
then
'如果下标max的元素小于下标i的元素,则把i赋给max
max
=
i
elseif
a(min)
>
a(i)
then
'如果下标min的元素大于下标i的元素,则把i赋给min
min
=
i
end
if
next
'交换最大值和最小值
t
=
a(max)
a(max)
=
a(min)
a(min)
=
t
"交换后数组的值:"
for
i
=
1
to
n
a(i)
&
"
";
next
end
sub
dim 是用来定义变量的,当后面木有(as。。。)的时候,表示定义x为变体型(variant)。
后面(if a)表示if a 不等于0,则运行then后面的语句,否则就else。
这个题目中x默认为0,所以直接执行else后面的print x+1,所以答案是1
VB的变量未经声明就可以使用,这既是VB的一个优点,使初学者更容易学编程,但也是VB的一大缺点,就是容易使程序产生很难发现的逻辑性错误,比如一开始用abc作为变量名,后来写着写着误写为abb,这个时候程序是不会报错的,但程序的运行结果却可能差了十万八千里了,而且这种错误是很难查出来的。
另外,变量未经声明就使用,会造成资源浪费,也会降低程序的运行效率。因为未经声明的变量VB会自动声明为Variant型,也就是所谓的“不定类型”,它会多占用几个字节用来指定变量的实际类型及长度,而且VB要先把它进行格式转化后再进行处理,运行速度就明显降低了。
除了VB(准确说是除了Basic家族语言),其他程序设计语言都要求变量必须预先声明其类型后才能使用的。这不是喜欢不喜欢的问题,而是非常必要的良好的编程习惯。你说加了dim程序运行不下去,那是因为你没有选对变量的类型,这恰恰说明了变量声明的重要性。
打个比方,变量未经声明就使用,就好像不管JJ的尺寸,大家都用同一个型号的套套,这样势必有人松、有人紧;而变量声明后再使用,就像是根据自己的JJ尺寸选用合适的套套,这样肯定是舒服多啦!
初学者大部分都是抱有你这样的想法的,但当你们进一步深入学习后,你们就会发现,养成良好的编程习惯是非常非常重要的!!!这是我作为一个老程序员的忠告!
声名一个二维数组
名称是
Matrix(0,0) Matrix(1,0)
Matrix(1,0) Matrix(1,1)
直到Matrix(9,11)
共 10×12=120个
数组是从0开头的,不像一楼说的那们 9×11
他表示大小为1012的数组吗? 这个问法有点怪
只能说他表示 从
Matrix(0,0)到Matrix(9,11)
这个范围内的1012的数组
楼上的自相矛盾。
但如果不定义x类型,那么默认确实是variant可变类型,而variant在赋值之前的初始值是一个无效的空数据,其真值为假,所以程序一直执行else语句。而执行到x+2时,因为和一个数字相加,这是的variant会自动转化为interger类型,而interger类型的初始值是0,所以答案就会一直是2
以上就是关于VB程序问题:我编了一个VB小程序 Dim a As String, b As String, c As String Private Sub Command1_Click全部的内容,包括:VB程序问题:我编了一个VB小程序 Dim a As String, b As String, c As String Private Sub Command1_Click、下面程序段: Dim y If y Then Print y+1 Else Print y+2、为什么他们写vb 喜欢加dim 没必要啊,有的时候加了dim x %都导致后面运行不下去。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)