[考試] 計算機題目求教

作者: log9898 (log)   2014-07-22 22:41:38
第1題:請問下列程式於Visual Basic 執行運算後,所得100 個數值之陳述,何者正確?
Dim i As Integer
For i = 1 To 100
Print ( Int ( Rnd * 59 ) And 12 ) ;
Next i
(A) 都是奇數,且是介於0 至12 之間
(B) 都是偶數,且是介於0 至12 之間
(C) 都是奇數,且是介於12 至70 之間
(D) 都是偶數,且是介於12 至70 之間
我覺得是D,答案是B,為什麼?看法如下
Int ( Rnd * 59 ) And 12 )=Int ( 0~1 * 59 ) And 12 )
=Int ( 0~59 And 12 )=Int (12~71)=12~70
第2題:下列 Visual Basic 程式片段執行後,若將陣列B之值由B(0)至 B(2)列出,並以逗點分隔
各元素,其結果為何?
Dim A( 3 ,2 ) As Integer
A( 0 , 0)=2:A( 0, 1 )=1:A( 1 ,0 )=3 :A( 1, 1 )=4:A( 2 ,0 )=5 :A( 2, 1 )=6
Dim B( ) As Integer={ 1 , 2, 3}
For i=0To2
For j=0To1
A( i , j )=A( i , j )+A( i , ( j+1)Mod 2 )
Next j
Next i
For i=0 To 2
B( i )=B( i )+(A( i ,0 )+A( i , 1) )
Next i
(A) 3 , 7 , 11 (B) 4 , 9 , 14 (C) 7 , 18 ,28 (D) 8 , 20 , 31
請教這行 B( i )=B( i )+(A( i ,0 )+A( i , 1) )
B( 0 )是多少要怎知道?還是不知道就是B( 0 )=1?我看不出來
作者: choral   2014-07-22 22:53:00
就丟到VB算一次就好啦
作者: kyc1023   2014-07-23 11:14:00
第一題應是位元運算 只會印出0 4 8(12 = 1100(二進位))

Links booklink

Contact Us: admin [ a t ] ucptt.com