① Vb中生成一個一維數組
Dim fileName As String Dim startnumber%,endnumber% Const MyFile = 1 Dim i% Dim T() Open fileName For Input As #MyFile '打開文件 Input #MyFile,startnumber ,endnumber '讀文件 Redim T(endnumber-startnumber) For i = startnumber To endnumber Input #MyFile, T(i) Next i Close #MyFile '關文件
② VB編程:使用一維數組編寫程序,隨機產生10個0~100的整數,求出最大值、最小值和平均值。
Dima(1To10)AsInteger
PrivateSubCommand1_Click()
Randomize
Fori=1To10
a(i)=Int(Rnd*101)
Printa(i);
Nexti
EndSub
PrivateSubCommand2_Click()
DimmaxAsInteger,minAsInteger
max=0
min=100
Fori=1To10
Ifmax<a(i)Thenmax=a(i)
Ifmin>a(i)Thenmin=a(i)
Nexti
Print"max";max;"min";min
EndSub
PrivateSubCommand3_Click()
DimaveAsDouble
Fori=1To10
ave=ave+a(i)
Nexti
Print"ave";ave/10
EndSub
③ 求vb編程題編程實現一維數組 A(10)中數組元素循環向右移動一
Private Sub Command1_Click()
Dim a(10) As Integer
For i = 1 To 10
a(i) = i
Print a(i);
Next i
Print "要移動的位數:";
n = CInt(InputBox("要移動的位數:"))
Print n
For i = 1 To n
t = a(10)
For j = 10 To 2 Step -1
a(j) = a(j - 1)
Next j
a(1) = t
Next i
Print "移動以後的數組:"
For i = 1 To 10
Print a(i);
Next i
End Sub
④ Vb一維數組,賦值、求和、求平均值,如何編程啊
下面是數據一個簡單的例子,賦值、求和、求平均值都包括了:
Dim a(4) As Long '定義數組a(4)
Private Sub Command1_Click()
Dim i As Long, x As Long, y As Double
For i = 0 To 4
a(i) = i '給數組賦值
Print "a(" & i & ")=" & a(i)
x = x + a(i)'計算數組和
Next
Print "數組和是:" & x
y = x / (UBound(a) + 1)'平均數
Print "數組平均數是:" & y
End Sub
⑤ vb一維數組初始化編程
dim a
a=array(1,2,3,4,5,6,7,8)
⑥ vb編程輸入10個整數存入一維數組,再按逆序重新存放後再輸出
Private Sub Command1_Click()
Dim a(10) As Integer
Print "初始的數:"
For i = 1 To 10
a(i) = InputBox("請輸入第" & i & "個數:")
Print a(i);
Next i
For i = 1 To 5
t = a(i)
a(i) = a(11 - i)
a(11 - i) = t
Next i
Print "逆序重新存放後的數:"
For i = 1 To 10
Print a(i);
Next i
Print: Print
End Sub
⑦ VB 如何定義一個一維數組
用一個帶括弧的變數名來定義一維數組和多維數組
如dim
a(5)
as
integer
'定義了1個1維、6個元素數組
dim
a(5,5)
as
integer
'定義了1個2維、36個元素的數組
⑧ 一維動態數組的vb程序
本代碼中使用了控制項數組,將三個按鈕控制項的NAME屬性都都設置為Command1,將INDEX屬性分別設置為0,1,2.本代碼已在VB6.0中測試通過.文件解壓之後才能正確執行,否則不能載入到VB程序中
完整代碼如下:
Dimaa()AsDouble
PrivateSubCommand1_Click(IndexAsInteger)
Cls
IfCommand1(Index).Caption="輸入"Then
ReDimaa(1To10)AsDouble'定義一個有10個元素(雙精度)的一維數組.
Text1=""
Fori=1To10
aa(i)=InputBox("請輸入數字!")'用輸入框接受元素的寫入.
Next
Fori=1To10
Text1=Text1&aa(i)&""
Next
ElseIfCommand1(Index).Caption="插入"Then
Text2="":Text3=""
b=InputBox("請輸入數字!")'用輸入框接受元素的寫入.
Text2=b
ReDimPreserveaa(1To11)AsDouble'定義一個有11個元素(雙精度)的一維數組.
aa(11)=b
Fori=11To2Step-1'處層循環逆序處理到第2項(再次檢查作用),處理到第2項是因為第1項沒有上浮的空間了.
Forj=1Toi-1'內層循環順序處理到第10項,因為第11項沒有下沉的空間了.
Ifaa(j)>aa(j+1)Then
tem=aa(j)
aa(j)=aa(j+1)
aa(j+1)=tem
EndIf
Next
Next
Fori=1To11
Text3=Text3&aa(i)&""
Next
ElseIfCommand1(Index).Caption="清空"Then
Text1=""
Text2=""
Text3=""
EndIf
EndSub
PrivateSubForm_Load()
Command1(0).Caption="輸入"
Command1(1).Caption="插入"
Command1(2).Caption="清空"
EndSub
⑨ vb 如何定義一個未知大小一維數組
動態數組數組到底應該有多大才合適,有時可能不得而知。所以希望能夠在運行時具有改變數組大小的能力。
動態數組就可以在任何時候改變大小。在VisualBasic中,動態數組最靈活、最方便,有助於有效管理內存。例如,可短時間使用一個大數組,然後,在不使用這個數組時,將內存空間釋放給系統。
如果不用動態數組,就要聲明一個數組,它的大小盡可能達到最大,然後再抹去那些不必要的元素。但是,如果過度使用這種方法,會導致內存的操作環境變慢。
要創建動態數組,請按照以下步驟執行:
ReDim語句只能出現在過程中。與Dim語句、Static語句不同,ReDim語句是一個可執行語句,由於這一語句,應用程序在運行時執行一個操作。
ReDim語句支持這樣的語法,它與固定數組中使用的語法相同。對於每一維數,每個ReDim語句都能改變元素數目以及上下界。但是,數組的維數不能改變。
ReDimDynArray(4to12)例如,用第一次聲明在模塊級所建立的動態數組Matrix1:
DimMatrix1()AsInteger然後,在過程中給數組分配空間:
SubCalcValuesNow()這里的ReDim語句給Matrix分配一個20×30的整數矩陣(元素總大小為600)。還有一個辦法,用變數設置動態數組的邊界:
ReDimMatrix1(X,Y)注意您可以將字元串賦值給大小可變的位元組數組。一個位元組數組也可以被賦值給一個可變長的字元串。一定要注意字元串中的位元組數會隨平台而變化。同一個字元串在Unicode平台上的位元組數是它在非Unicode平台上的兩倍。
保留動態數組的內容每次執行ReDim語句時,當前存儲在數組中的值都會全部丟失。VisualBasi重新將數組元素的值置為Empty(對Variant數組)、置為0(對Numeric數組)、置為零長度字元串(對String數組)或者置為Nothing(對於對象的數組)。
在為新數據准備數組,或者要縮減數組大小以節省內存時,這樣做是非常有用的。有時希望改變數組大小又不丟失數組中的數據。使用具有Preserve關鍵字的ReDim語句就可做到這點。例如,使用UBound函數引用上界,使數組擴大、增加一個元素,而現有元素的值並未丟失:
ReDimPreserveDynArray(UBound(DynArray)+1)在用Preserve關鍵字時,只能改變多維數組中最後一維的上界;如果改變了其它維或最後一維的下界,那麼運行時就會出錯。所以可這樣編程:
ReDimPreserveMatrix(10,UBound(Matrix,2)+1)而不可這樣編程:
ReDimPreserveMatrix(UBound(Matrix,1)+1,10)詳細信息關於動態數組的更詳細信息,請參閱語言參考中的「ReDim函數」。關於對象數組,請參閱「用對象編程」。
⑩ 如何用vb編寫程序實現在一維數組b的第5個位置上插入一個輸入的數據的功能
假設已知a(5)數組有6個排序OK的數。
加一個Text控制項和 命令
Dim a() As Integer
Private Sub Command1_Click()
num = InputBox("Please enter number", "Insert number")
ReDim a(6) As Integer
a(0) = 1
a(1) = 2
a(2) = 4
a(3) = 6
a(4) = 11
a(5) = 14
a(6) = num
If a(6) < a(0) Then
For k = 5 To 0 Step -1
a(k + 1) = a(k)
Next k
a(0) = num
ElseIf a(6) > a(0) Then
For i = 1 To 5
If a(6) >= a(i - 1) And a(6) < a(i) Then
For k = 5 To i Step -1
a(k + 1) = a(k)
If k = i Then
a(k) = num
End If
Next k
End If
Next i
End If
For i = 0 To 6
txt1 = txt1 & a(i) & "-"
Next i
Text1.Text = txt1
End Sub
Private Sub Form_Load()
ReDim a(5) As Integer
a(0) = 1
a(1) = 2
a(2) = 4
a(3) = 6
a(4) = 11
a(5) = 14
For i = 0 To 5
txt1 = txt1 & a(i) & "-"
Next i
Text1.Text = txt1
End Sub