我後來發現你的程式不是陣列的問題,因為你是從0放到9共10個整數,所以你用1到9是沒錯的!!但是你的大括號有問題,我把你的程式修改如下就可以正常運作了,你自己在比對一下囉!6 I7 v# }/ J- P1 e( r- g
; q3 U; _( y* H" c5 `$ e1 T
public class TQC104 {
5 r7 S5 A: e, l( I private static final boolean Expression = false; X. ~+ {( n5 f9 A' j/ Y
7 P, e) ^! M7 W public static void main(String args [] )! }! E! ]+ b7 D' r! N
{$ z) d6 h/ Y- w# Q- Y
int a[]={0,1,2,3,4,5,6,7,8,9};" _* z- U5 J7 v7 U0 T: g
boolean check=false;
' R4 `4 Q$ \% f4 M! Z int i, j, c1, c2, c3, c4, c5, c6, c7, c8;6 H+ K. Z* K. n- e& \
do
4 c& m3 Q! M) x P! s {
Q( F5 N# i! i for( i=1 ; i<a.length ; i++)
4 l/ S) k" j* y, D2 y0 a! G+ ] {! Q& I q, Q7 A" S
j=(int)(Math.random()*9)+1;
9 Q1 c! R ]7 ^7 d a[0] = a[i];
4 D- q9 w% _! D a[i] = a[j];
! ~% ` p6 X* d1 T7 X4 p a[j] = a[0];6 }& x- s9 |+ K
}
# i7 w) O2 s. | [$ c: @9 ^' a2 }- L% L c1 = a[1] + a[2] + a[3];
O' j. W4 h+ v" |+ K I c2 = a[4] + a[5] + a[6];1 `: X- e3 k; \9 R: n
c3 = a[7] + a[8] + a[9];
9 Y; [- j: c" p0 y+ c5 q c4 = a[1] + a[4] + a[7];/ O: b4 c3 s% K& l: E0 @
c5 = a[2] + a[5] + a[8];# n0 h. w) S* e) F$ u7 b* W$ L% ]
c6 = a[3] + a[6] + a[9];
/ E2 l1 S$ M; W5 P$ ^ Z c7 = a[1] + a[5] + a[9];! t) g$ x1 B. m7 U" u, A! G; K
c8 = a[3] + a[5] + a[7];
F+ L( T( Y3 N/ g/ ]" f s2 s if( c1==15 && c2==15 && c3==15 && c4==15 && c5==15 && c6==15 && c7==15 && c8==15)
7 c, c) z0 ]" V- N {
% Y2 n, d' F: w# v- B$ J' { check = true;
9 R4 a7 I2 t1 V- L }/ L2 ~! h" M0 l
}while(Expression);; q$ ~0 C5 ~1 e/ e& Z5 H7 R
( v( |. g& r/ J6 ~; j
System.out.println("answer:");8 W% }& |% z4 {7 m% Y; a. F
System.out.println(a[1] + " " + a[2] + " " + a[3]);8 Q* d8 g$ X& V- E7 U* Y4 ?7 i) i, b. B
System.out.println(a[4] + " " + a[5] + " " + a[6]);
% r; z) s$ E- g1 p9 R3 W System.out.println(a[7] + " " + a[8] + " " + a[9]);8 G$ c/ y& q6 [5 h' H3 ?+ v' R
System.out.println("不論橫向縱向及對角線加起來的和都是:15");7 @% q& d, @- ^+ r
}
# D1 {2 r w) Y! [} |