下列 System.out.printf 语句输出的结果是什么? Char a[]={„a‟,‟b‟,‟c‟,‟d‟,‟e‟}; For(i=0; i<=a.length/2; i++) { char c=a[i]; a[i]=a[a.length-(i+1)]; a [a.length-(i+1)]=c; } System.out.printf(“%c%c%c%c%c”a[0],a[1],a[2 ],a[3],a[4]); 输出: e,d,c,b,a
对于“For(i=0; i<=a.length/2; i++) ” 循环,i从0开始,至2结束,每循环一次,i的值加1; //据题意,a.length=5 且 i应该是整型数据,所以a.length/2=2 对于 For(i=0; i<=a.length/2; i++) { char c=a[i]; a[i]=a[a.length-(i+1)]; a [a.length-(i+1)]=c; } 第一次:i=0; c=a[0]=a a[0]=a[5-1]=a[4]=e a[4]=a[0]=a 此时数组如下: Char a[]={„e‟,‟b‟,‟c‟,‟d‟,‟a‟}; 第二次:i=1; c=a[1]=b a[1]=a[5-2]=a[3]=d a[3]=a[1]=d 此时数组如下: Char a[]={„e‟,‟d‟,‟c‟,‟b‟,‟a‟}; 第三次:i=2; c=a[2]=c a[2]=a[5-3]=a[2]=c a[2]=a[2]=c 此时数组如下: Char a[]={„e‟,‟d‟,‟c‟,‟b‟,‟a‟}; 三次循环执行结束就是最后结果。