Rumah > Soal Jawab > teks badan
Char c[]={'1','2','3','4'}
for(int i=0;i<c.length/2;i++){
char d=c[i];
c[i]=c[c.length-(i+1)];
c[c.length-(i+1)]=d;
}
for(int i=0;i<c.length;i++){
System.out.println(c[i]);
}
为什输出的结果为4321?
天蓬老师2017-04-18 10:51:09
Gelung dua kali, kali pertama 1 dan 4 ditukar, kali kedua 2 dan 3 ditukar
伊谢尔伦2017-04-18 10:51:09
Apabila i = 0; char d=c[i];
Tetapkan nilai c[0] kepada d, iaitu 1; ,4] , tetapi d mempunyai nilai awal, iaitu 1;
[Maksud operasi adalah untuk meletakkan pihak yang ditukar dalam kedudukan terbiar] c[i]=c[c.length-(i+1)];
Tetapkan nilai c [3] hingga c[0] ;
Pada masa ini, tatasusunan c ialah [4,2,3,4], dan nilai d ialah 1;
[Maksud operasi adalah untuk memberikan menukar nilai sisi B ke sisi A]c[c.length-(i+1)]=d;
Tetapkan nilai d, iaitu nilai 1 c[0] pada permulaan, kepada c[3]; nilai tatasusunan c ialah [4,2,3,1], dan nilai d ialah 1; A, kepada B; akhirnya, pertukaran nilai A dan B dicapai]
Apabila i ialah 1,
d ialah c[1], iaitu 2
Pada masa ini, tatasusunan c ialah [4,2,3,1] dan nilai d ialah 2; char d=c[i];
Tetapkan nilai c[2] kepada c[1]
Pada masa ini, tatasusunan c ialah [4,3,3,1], dan nilai d ialah 2;c[i]=c[c.length-(i+1)];
Tetapkan nilai d, iaitu nilai 2 bagi c[1] pada permulaan, kepada c[2]; tatasusunan c ialah [4,3,2,1], dan nilai d ialah 2;
Tamatkan yang pertama untuk gelung c[c.length-(i+1)]=d;
高洛峰2017-04-18 10:51:09
Pada asasnya ia adalah operasi swap
Contoh
a = 1 b = 2 => b = a a = c
Jika ini boleh:
a =1 , b = 2;
a,b:=b,a;
Kelihatan lebih ringkas