17
社区成员
发帖
与我相关
我的任务
分享问题描述 十六进制数是在程序设计时经常要使用到的一种整数的表示方式。它有0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F共16个符号, 分别表示十进制数的0至15。十六进制的计数方法是满16进1,所以十进制数16在十六进制中是10,而十进制的17在十六进制中是11, 以此类推,十进制的30在十六进制中是1E。 给出一个非负整数,将它表示成十六进制的形式。 输入格式 输入包含一个非负整数a,表示要转换的数。0<=a<=2147483647 输出格式 输出这个整数的16进制表示 样例输入 30 样例输出 1E
public class day10 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int n = sc.nextInt();
System.out.println(Integer.toHexString(n).toUpperCase());
}
}
public class day10 {
public static void main(String[] args) {
char[] a = new char[100];
int i = 0;
Scanner sc= new Scanner(System.in);
int n = sc.nextInt();
if (n == 0) {
System.out.println(0);
}
else {
while (n != 0) {
if (n % 16 >= 10) {
a[i++] = (char) ('A' + n % 16 - 10);
} else {
a[i++] = (char) ('0' + n % 16);
}
n /= 16;
}
}
for (int j = i - 1; j >= 0; j--) {
System.out.print(a[j]);
}
}
}