十进制转八进制的转换问题 高手请进
import java.util.Scanner;public class xue {
public static void main(String[] args){
Scanner in = new Scanner(System.in);
int a = in.nextInt();
int[] b ;
b = new int[8];
for( int i = 0 ; i < b.length ; i++){
b[i] = a % 8 ;
a = a / 8 ;
System.out.println(b[i]);}
}
}
这个程序错在哪儿??
----------------解决方案--------------------------------------------------------
import java.util.Scanner;
public class Xue {
public static void main(String[] args){
Scanner in = new Scanner(System.in);
int a = in.nextInt();
int[] b = new int[8];
//for( int i = b.length - 1 ; i >= 0 ; i--){
for(int i = 0;i < b.length;i++){
b[i] = a % 8 ;
a = a / 8 ;
}
//for(int i = 0;i < b.length;i++){
for( int i = b.length - 1 ; i >= 0 ; i--){
if(b[i] != 0){
System.out.print(b[i]);
}
}
}
}
以上代码 要么都用红色的 要么都用蓝色的
注意数组B的输入输出顺序相反就行
----------------解决方案--------------------------------------------------------
/*
java.lang.Integer类中有一个方法可以转成八进制
public static String toOctalString(int i)
转十六进制
public static String toHexString(int i)
转二进制
public static String toBinaryString(int i)
注意返回的是字符串String
*/
import java.lang.Integer;
import java.util.Scanner;
public class Transfer {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int a = in.nextInt();
System.out.println("转八进:" + Integer.toOctalString(a));
System.out.println("转二进:" + Integer.toBinaryString(a));
System.out.println("转十六进:" + Integer.toHexString(a));
}
}
[ 本帖最后由 lampeter123 于 2010-3-28 07:44 编辑 ]
----------------解决方案--------------------------------------------------------
还有这个?都没看
----------------解决方案--------------------------------------------------------
回复 楼主 止水
谢谢了 ----------------解决方案--------------------------------------------------------