爱问知识人 爱问教育 医院库

一道VB的基础题目,希望高手帮忙解决一下。

首页

一道VB的基础题目,希望高手帮忙解决一下。


        

提交回答
好评回答
  • 2008-11-06 18:10:00
      我 的可以完全满足你的要求了。附有说明。 VB6。0测试通过。Private Sub Command1_Click() Dim m, n, i, j, i1, i2, k, l As Integer Dim a(1 To 99, 1 To 99), temp, temp2, t As String '设定数组的最大为99行99列,可更改 temp = 0 '初始化temp,令其为0 Form1。
      Cls '清空窗体内容 m = 6: n = 5 '生成数组a(m,n) m,n可直接更改为想要的大小 For i = 1 To m For j = 1 To n Randomize (Timer) '获得随机数种子 l = (Int(Rnd() * 7 + 1) Mod 7) '随机获得1到7个长度的字符 t = "" '每次循环都清空t For k = 0 To l t = t & Chr(Int(Rnd() * 26) + 65) '随机获得 l长度的大写字母 Next a(i, j) = t '将t的值传给数组 Print Tab((j - 1) * 9); a(i, j); '每隔8个字符空间,打印一个数组元素 If Len(a(i, j)) > temp Then '如果a的长度比上一个a的长度大的话 temp = Len(a(i, j)) '则用较长的a的长度覆盖temp i1 = i '记录最长元素的坐标 i2 = j End If Next Print Next Print '以下三行是把最大元素和最后元素交换位置 temp2 = a(i1, i2) a(i1, i2) = a(m, n) a(m, n) = temp2 For i = 1 To m '以下是每隔8个字符空间,打印一个数组元素 For j = 1 To n Print Tab((j - 1) * 9); a(i, j); Next Print Next End Sub。
      

    p***

    2008-11-06 18:10:00

其他答案

    2008-11-08 10:58:00
  •   不知道你用的VB是哪个版本的,下面的代码是我用VB2005写的,并且是一个控制台应用程序,已通过测试,如果你想把它改成VB6的话,跟我联系吧!假设你的矩阵是4*4的话,代码如下:    Sub Main()      Dim a As String(,) = New String(3, 3) {}      Dim b As Random = New Random()      Dim c As Random = New Random()      Dim d As String      For i As Integer = 0 To a。
      GetUpperBound(0) For j As Integer = 0 To a。GetUpperBound(1) d = "" For k As Integer = 1 To c。
      Next(1, 8) d &= Chr(b。Next(65, 91)) Next a(i, j) = d Next Next For i As Integer = 0 To a。
      GetUpperBound(0) For j As Integer = 0 To a。GetUpperBound(1) If a(i, j)。Length = 7 Then d = a(i, j) a(i, j) = a(a。
      GetUpperBound(0), a。GetUpperBound(1)) a(a。GetUpperBound(0), a。GetUpperBound(1)) = d End If Console。
      Write(a(i, j) & vbTab) Next Console。WriteLine() Next End Sub。

    k***

    2008-11-08 10:58:00

  • 2008-11-07 20:39:00
  •   刚刚我帮你写了一个程序,希望把你的意思理解对了。我的理解如下,你看看是不是你要的效果!  如果不符,可以百度消息,大家一起研究、交流!'需要控件:command1Private Sub Command1_Click()'初学VB 搞不清楚 希望各位高手解决下面的题目'声明一个m*n的矩阵A,要求:由随机数形成大写字母构成的数组,每个元素的字'符个数由随机数产生,范围为1-7。
      将矩阵中最长的元素与矩阵的最后一个元素换位。'会做的请把此题的代码回复给我,并且把一些关键步骤的意思写在旁边,我会追加分数。Dim m, n, i, j, k, Sums, sDatam = 4 '矩阵行n = 5 '矩阵列ReDim a(m, n) As String '动态生成数组a(m,n) m*n矩阵Me。
      ClsFor i = 0 To m - 1 For j = 0 To n - 1 Randomize (Timer) '随机数种子 Sums = (Int(Rnd() * 7) Mod 7) '随机1~7 个字符 sData = "" For k = 0 To Sums sData = sData & Chr(Int(Rnd() * 26) + 65) '累加Sums个随机大写字母 Next k a(i, j) = sData Print a(i, j) & " "; '打开结果 Next j PrintNext iEnd Sub。
      

    m***

    2008-11-07 20:39:00

  • 2008-11-07 12:26:00
  • Dim m, n, i, j, k, Sums, sData m = 4 '矩阵行 n = 5 '矩阵列 ReDim a(m, n) As String '动态生成数组a(m,n) m*n矩阵 Me.Cls For i = 0 To m - 1 For j = 0 To n - 1 Randomize (Timer) '随机数种子 Sums = (Int(Rnd() * 7) Mod 7) '随机1~7 个字符 sData = "" For k = 0 To Sums sData = sData & Chr(Int(Rnd() * 26) + 65) '累加Sums个随机大写字母 Next k a(i, j) = sData Print a(i, j) & " "; '打开结果 Next j Print Next i End Sub

    f***

    2008-11-07 12:26:00

类似问题

换一换

相关推荐

正在加载...
最新问答 推荐信息 热门专题 热点推荐
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200

热点检索

  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
返回
顶部
帮助 意见
反馈

确定举报此问题

举报原因(必选):