【VB编程 使2行3列转化成3行2列,请将此代码详细解释一下他的每一部的意思

问题描述:

【VB编程 使2行3列转化成3行2列,请将此代码详细解释一下他的每一部的意思
VB编程 使2行3列转化成3行2列,请将此代码详细解释一下他的每一部的意思,比如 a(1,j) = a(0,j) + 为什么要加3 ,3是加给0,还是j还是?
Private Sub Button1_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles Button1.Click
Dim a(2,3) As Integer,b(3,2) As Integer,i As Integer,j As Integer
For j = 0 To 2 'a数组元素赋值
a(0,j) = j + 1 :a(1,j) = a(0,j) + 3
Next j
TextBox1.Text = "a数组:" & vbCrLf ' 在TextBox1中输出a数组
For i = 0 To 1
For j = 0 To 2
TextBox1.Text = TextBox1.Text & a(i,j) & vbTab
Next j
TextBox1.Text = TextBox1.Text & vbCrLf '换行
Next i
For i = 0 To 1 ' 转换
For j = 0 To 2
b(j,i) = a(i,j)
Next j
Next i
TextBox2.Text = "转换后:" & vbCrLf '在TextBox2中输出b数组
For i = 0 To 2
For j = 0 To 1
TextBox2.Text = TextBox2.Text & b(i,j) & vbTab
Next j
TextBox2.Text = TextBox2.Text & vbCrLf '换行
Next i
End Sub
End Class
1个回答 分类:综合 2014-10-24

问题解答:

我来补答
先回答你提出的问题,再对程序的每一步讲解
你的问题是a(1, j) = a(0, j) + 3是什么意思?为什么要加3 ,3是加给0,还是j还是?
看前面的一句a(0, j) = j + 1 ;还有他的注释,a数组元素赋值
j=0时a(0,0)=0+1=1;a(1, 0) = a(0, 0) + 3=1+3=4;
j=1时a(0,1)=1+1=2;a(1, 1) = a(0, 1) + 3=2+3=5;
j=0时a(0,2)=2+1=3;a(1, 2) = a(0, 2) + 3=3+3=6;
看到了吧,其实加三是随便加的,只是这样数组就是123 456了,这样转换后输出的是14 25 36,比较容易看出结果,一般来说写一些程序都是用这样的序列来的,要是你的数组元素全是同一个数,比如都是1,那怎么转换都是6个1,看不出有什么区别,说深点就是测试向量的选择了,要好,这个你们不涉及的吧,就不说了
for和next就是循环,不知道你懂不懂的,还是和你说下吧
比如
For j = 0 To 2
a(0, j) = j + 1 : a(1, j) = a(0, j) + 3
Next j
开始j=0;做下面的赋值语句
做完是next j,给j加一做判断,由于j=0to2,现在就是1,继续做赋值语句,做完再加一,是2,判断还是符合的,就再做一遍,然后j变成3了不符合条件了,就做next j下面的东西了
for for next next就是循环的嵌套了,就是先把里面的循环做完(不停的加一),再做外面的循环(加1再做里面的循环),比较复杂,如果不懂你再问我好了,
TextBox1.Text = "a数组:" & vbCrLf ‘定义box内容是:a数组
For i = 0 To 1
For j = 0 To 2
TextBox1.Text = TextBox1.Text & a(i, j) & vbTab
这句话是把a(i,j)接在a数组后面,再加个制表符号
Next j
TextBox1.Text = TextBox1.Text & vbCrLf
这句话把他换行
Next i
输出结果应该就是
a数组:1 2 3
4 5 6
同样textbox2的原理,输出
转换后:1 4
2 5
3 6
还有中间的一段是转换的
For i = 0 To 1
For j = 0 To 2
b(j, i) = a(i, j)
Next j
Next i
i=0;j=0时,b(0, 0) = a(0, 0)=1
i=0;j=1时,b(1, 0) = a(0, 1)=2
i=0;j=2时,b(2, 0) = a(0, 2)=3
i=1;j=0时,b(0, 1) = a(1, 0)=4
i=1;j=1时,b(1, 1) = a(1, 1)=5
i=1;j=2时,b(2, 1) = a(1, 2)=6
现在看b数组不就是1 4 2 5 3 6了吗?是吧,转换过来了
再和上面输出a数组的原理一样输出B数组(转换后的)就可以了哇
还有什么不懂继续问我好了
 
 
展开全文阅读
剩余:2000
上一页:高数一指数函数
下一页:必修五第四单元