作者albb0920 (albb)
看板Visual_Basic
標題Re: [VB6 ] >_<a徵求好心人士惡補VB
時間Sat Jun 30 10:52:36 2007
作一份94年的詳解
感覺考題好沒意義....囧
可能有錯,請高手修正
----選擇題----
<1> 3
選項1: VB比較字串時,是比較Ascii的合(排列:數字->大寫->小寫),"A"=65 "a"=97
故為False 【X】
選項2: 同1 "0"=48 48 < 65 應為True【X】
選項3: 續1 2
--And 真值表-- T:True F:False
T And T = T,T And F = F ,F And T = F , F And F = F
故 F And T = F,【O】
<2> 3
選項1: VB函數呼叫可以省略括弧
選項2: 2005為數值,可以不用"",VB自動轉換
選項3: 字串無"",VB看不懂
選項4: +可以連接字串
<3> 1
算數->比較->邏輯,算數大於比較跟數學一樣,比較有真假才能邏輯運算
例:
Print ( 1 + 3 > 2 And 5 + 2 < 10)
<4> 2
選項1: 即 Not("A" Like "!A"),like為比較字串是否類似於格式,!A即字串不含A
傳回True 【X】
選項2: Mod(求餘數)由先權大於加減,故為 10 -2 < (-2)^2 + 3 傳回False 【O】
選項3: 超級罕用的語法,直接是Date型態
例:CDate("2006/1/1") = #1/1/2006#
7/1/2005 > 7/1/2004 ,又 T Or T = T 傳回True 【X】
選項4: Xor ->左右相同傳回假,不同傳回真 ,T Xor F = T 【X】
Like運算子的規則比較複雜,請參考
http://msdn2.microsoft.com/zh-tw/library/swf8kaxw(VS.80).aspx
<5> 3
有4列 0,1,2,3 及6行 0,1,2,3,4,5,共24格 (感謝colawei指正)
<6> 4
X(2)即X陣列的第3個元素(由0開始),即6
X(6+1) 為第8個元素 16 即為所求
<7> 2
選項1: 轉換為ASCII
選項2: 轉換為16進位
選項3: 轉換為字元
選項4: 轉換為8進位
<8> 2
選項1: (沒這東西)
選項2: 多行
選項3: 最多字數
選項4: 鎖定
<9> 4
只有文字方塊才能變更啊
<10> 1
vbYesNo只有 是 跟 否
又未指定預設按鈕
故為第一個"是"
----填充----
<1> N 列 M 行(先列再行)
<2>
25 > 12 不換
12 < 78 換
12 < 23 換
12 < 45 換
註:氣泡就是這樣用比較把數字浮上去
要用巢狀迴圈跑
(其實有人是用沉下去的...囧)
<3>
ImageBox PicturePox Label TextBox CommandButton Frame RadioBox ComboBox Timer
<4>
Mid(S,InStr(1,S,"程式"),2)
註:
Mid 取出字串中的部分字串,Mid(變數,開始位置,長度)
InSTR 尋找字串 InSTR (開始位置,來源字串,目標字串)
<5> a = 6 s = 20
變數 m n s都是正整數,VB正整數初值為0
a 被指定為 1
n 被指定為 5
第一次 第二次 第三次 第四次 第五次
a = 2 a = 3 a = 4 a = 5 a = 6 a > n 跳出回圈
s = 2 s = 5 s = 9 s = 14 s = 20
要注意的是VB有的判斷方法
Do While
進入迴圈檢查判斷式是否成立,成立者進入
Do Until
進入迴圈檢查,判斷式成立時跳出回圈
Loop 的規則相同,不過是在執行完迴圈時才檢查
<6-1>
"Love" Like "*ove" = True 註:*是萬用字元
Or只要一方為真即為真
故,True
<6-2>
請參考選擇4
True Xor True = False
故False
---程式設計(答案僅供參考)---
<1>
Dim Candidate() as integer
Dim Selected() as integer
Randomize '以時間作為隨機種子
ReDim Candidate(42) '先宣告再ReDim才能不斷改變陣列大小
For i = 1 To 42
Candidate(i) = i
Next
For q = 1 to 6
qq = Int(Rnd * UBound (Candidate) ) + 1
'隨機取1至目前陣列大小的數,Rnd傳回 0 至 1 之間的浮點數
Print "第 " & q & " 個號碼為 " & Candidate(qq)
Candidate(qq) = Candidate(UBound(Candidate))
ReDim Preserve Candidate(UBound(Candidate)-1)
'ReDim Preseve 改變陣列大小並保留資料
Next
<2>
恕我使用暴力法
Dim Candidate() As String, target As Integer
target = 100
ReDim Candidate(target)
Candidate(1) = "X"
For I = 2 To target
For J = 2 To I
If J <> I Then
If (I Mod J) = 0 Then
Candidate(I) = "X"
Exit For
End If
End If
Next
Next
For z = 1 To target
If Candidate(z) <> "X" Then Print (z)
Next
<3>
Dim Sum as integer
For I = 1 to N
For q = 1 to I
sum = sum + q
Next
Next
Print sum
<4>
Dim mystr As String
For I = -6 To 6
If I <> 0 And I <> 1 Then
For p = 1 To Abs(I)
mystr = mystr & "*"
Next
Print mystr
mystr = ""
End If
Next
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.112.41.236
推 JingTeng:你是好人...XD 06/30 12:07
推 albb0920:謝謝 XDD 06/30 12:51
推 BearWu:高手..科科XD 06/30 22:03
推 guohwai:好人ㄧ枚 07/02 09:01
推 colawei:二維陣列那裡錯了,vb6預設是base 0所以是從0開始算. 07/02 09:05
※ 編輯: albb0920 來自: 59.112.48.239 (07/02 13:01)
推 albb0920:謝謝colawei 07/02 13:01
推 ClubT:可惜他應該考玩了XD 07/02 13:39
→ ClubT: 完 07/02 13:40