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,第1张

把下面的代码复制到窗体的代码里,运行后单击窗体就可以了。

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

print

"数组的初始值:"

for

i

=

1

to

n

print

a(i)

&

"

";

next

print

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

print

"交换后数组的值:"

for

i

=

1

to

n

print

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 %都导致后面运行不下去。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10078869.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存