vb.net動態(tài)數(shù)組合并 vb靜態(tài)數(shù)組

vb我想把兩個隨機數(shù)組合并后排序現(xiàn)在兩個隨機數(shù)組都可以出來然后合并要怎樣做呢?

給一個思路:第一是新建一個數(shù)組,把兩個數(shù)組元素傳遞過去,這個比較簡單;

網(wǎng)站建設公司,為您提供網(wǎng)站建設,網(wǎng)站制作,網(wǎng)頁設計及定制網(wǎng)站建設服務,專注于成都企業(yè)網(wǎng)站建設,高端網(wǎng)頁制作,對塔吊租賃等多個行業(yè)擁有豐富的網(wǎng)站建設經(jīng)驗的網(wǎng)站建設公司。專業(yè)網(wǎng)站設計,網(wǎng)站優(yōu)化推廣哪家好,專業(yè)seo優(yōu)化排名優(yōu)化,H5建站,響應式網(wǎng)站。

第二:把其中一個數(shù)組做為母數(shù)組,把另一個數(shù)組合并過來,這個用到數(shù)組保護機制如下:

Option Explicit

Dim a(): Dim b()

Private Sub Command1_Click()? ? '初始化數(shù)組A B

Dim i As Integer

'重新定義數(shù)組長度,并賦值

ReDim a(5)

ReDim b(4)

For i = 0 To 5

a(i) = i

Print "數(shù)組a" "(" i ")" "=" a(i)

Next i

For i = 0 To 4

b(i) = 1 i

Print "數(shù)組b" "(" i ")" "=" b(i)

Next i

Print

End Sub

Private Sub MergeArr_cmd_Click()? ?'合并A 和 B兩個數(shù)組

Dim s As Integer

Dim h As Integer

Dim i As Integer

h = UBound(a)

s = UBound(a) + UBound(b) + 1

ReDim Preserve a(s)? ? '采用保護機制,把數(shù)組A元素加長,長度為:數(shù)組A和B的長度之和

For i = 1 To UBound(b) + 1? ? '將數(shù)組B元素加入到數(shù)組A中

a(h + i) = b(i - 1)

Next i

For i = 0 To s

Print "數(shù)組a" "(" i ")" "=" a(i)

Next

End Sub

VB 怎樣加將兩個數(shù)組合并

Private Sub Command1_Click()

a = Array(1, 2, 4, 7, 9, 34, 65, 73, 78, 99, 234, 1234)

b = Array(0, 23, 33, 56, 78, 98, 99, 234, 1000, 9999)

Dim c(30)

i = 0

j = 0

k = 0

While i = UBound(a) And j = UBound(b)

If a(i) b(j) Then

c(k) = a(i)

i = i + 1

Else

c(k) = b(j)

j = j + 1

End If

k = k + 1

Wend

While i UBound(a)

c(k) = a(i)

i = i + 1: k = k + 1

Wend

While j UBound(b)

c(k) = b(j)

j = j + 1: k = k + 1

Wend

Print "原A數(shù)組:"

For i = 0 To UBound(a)

Print a(i);

Next i

Print

Print "原B數(shù)組:"

For i = 0 To UBound(b)

Print b(i);

Next i

Print

Print "合并后的c數(shù)組:"

For i = 0 To k

Print c(i);

If i Mod 15 = 14 Then Print

Next i

Print

End Sub

vb數(shù)組合并 代碼

Option?Explicit

Function?JionNumber(a?As?Variant,?b?As?Variant,?c?As?Variant)?'a數(shù)組和b數(shù)組?合并到c數(shù)組

Dim?i?As?Integer,?j?As?Integer

ReDim?c(UBound(a)?+?UBound(b)?+?1)

For?i?=?0?To?UBound(a)

c(i)?=?a(i)

Next

For?j?=?i?To?UBound(b)?+?i

c(j)?=?b(j?-?i)

Next

End?Function

Private?Sub?SelectSort(Xarray()?As?Variant)??'選擇排序法,升序排序

Dim?i%,?j%,?k%,?t%,?Start%,?Finish%

Start?=?LBound(Xarray,?1)

Finish?=?UBound(Xarray,?1)

For?i?=?Start?To?Finish?-?1

k?=?i

For?j?=?i?+?1?To?Finish

If?Xarray(j)??Xarray(k)?Then?k?=?j??'k表示當前最大值對應的下標

Next?j

If?k??i?Then

t?=?Xarray(i)

Xarray(i)?=?Xarray(k)

Xarray(k)?=?t

End?If

Next?i

End?Sub

Private?Sub?Command1_Click()

Dim?a()?As?Variant,?b()?As?Variant,?c()?As?Variant,?d()?As?Variant,?e()?As?Variant

Dim?f()?As?Variant?'合并后的數(shù)組

Dim?ab,?abc,?abcd,?i%

a?=?Array(10,?11,?18,?19,?26,?27,?40,?41,?48,?49)

b?=?Array(1,?8,?9,?22,?23,?30,?31,?38,?39)

c?=?Array(6,?7,?14,?15,?28,?29,?36,?37,?44,?45)

d?=?Array(2,?3,?16,?17,?24,?25,?32,?33,?46,?47)

e?=?Array(4,?5,?12,?13,?20,?21,?34,?35,?42,?43)

JionNumber?a,?b,?ab?'合并數(shù)組

JionNumber?ab,?c,?abc

JionNumber?abc,?d,?abcd

JionNumber?abcd,?e,?f

Text1?=?"排序前:"??vbCrLf

For?i?=?0?To?UBound(f)

Text1?=?Text1??"?"??f(i)

Next?i

Text1?=?Text1??vbCrLf??"排序后:"??vbCrLf

SelectSort?f()?'排序

For?i?=?0?To?UBound(f)

Text1?=?Text1??"?"??f(i)

Next?i

End?Sub

Text1屬性:MultiLine?設為?True,ScrollBars設為2

vb如何合并兩個一維數(shù)組?

合并數(shù)組沒有簡單辦法,只能一維一維的取出來,放到一新數(shù)組中。新數(shù)組維數(shù)是原兩數(shù)組維數(shù)相加。

比如兩個數(shù)組 A ,B

dim newAr() '如果兩個數(shù)組類型相同話 ,可以定義類型。

redim newAr(ubound(A)-lbound(A)+1+ubound(B)-lbound(B)+1-1) ‘由于數(shù)組定義只能用常數(shù)表達式定義維數(shù),所以用動態(tài)數(shù)組。

把兩數(shù)組項目添加到newAr 中

dim Index as integer

dim i as integer

for i=LBound(A) to UBound(A)

newAr(Index)=A(i)

Index=Index+1

next

for i=LBound(B) to UBound(B)

newAr(Index)=B(i)

Index=Index+1

next

怎樣把兩個數(shù)組合并為一個?用VB寫?好心人幫忙啦,急用!最好用插入法寫的。

Private Sub Command1_Click()

Dim a(1 To 10), b(1 To 10), c(1 To 20)

Randomize

For i = 1 To 10

a(i) = Int(Rnd * 100)

b(i) = Int(Rnd * 100)

Next i

For i = 1 To 9

For j = 10 To i + 1 Step -1

If a(i) a(j) Then d = a(i): a(i) = a(j): a(j) = d

If b(i) b(j) Then d = b(i): b(i) = b(j): b(j) = d

Next j, i

For i = 1 To 10

Print a(i);

Next i

Print

For i = 1 To 10

Print b(i);

Next i

Print

'下面就是合并過程

j = 1

For i = 1 To 10

Do

If a(i) b(j) Then

k = k + 1

c(k) = a(i)

Exit Do

Else

k = k + 1

c(k) = b(j)

j = j + 1

If j 10 Then Exit For

End If

Loop

Next i

If i = 10 Then

For n = i To 10

k = k + 1

c(k) = a(n)

Next n

End If

If j = 10 Then

For n = j To 10

k = k + 1

c(k) = b(n)

Next n

End If

'合并結束

For i = 1 To 20

Print c(i);

Next i

Print

End Sub

Private Sub Form_Load()

Me.AutoRedraw = True

End Sub

當前名稱:vb.net動態(tài)數(shù)組合并 vb靜態(tài)數(shù)組
本文來源:http://muchs.cn/article46/dooojhg.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供域名注冊、營銷型網(wǎng)站建設、電子商務定制網(wǎng)站、ChatGPT網(wǎng)站建設

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設公司