首页 > 试题广场 >

编写一个程序,输出任意一个十进制整数对应的八进制数和十六进制

[问答题]
编写一个程序,输出任意一个十进制整数对应的八进制数和十六进制数。
推荐
#include <stdio.h>
void main()
{
    int i;
    printf("输入一个整数:");
    scanf("%d",&i);
    printf("%d(10)<==>%o(8)\n",i,i);
    printf("%d(10)<==>%x(16)\n\n",i,i);
}

发表于 2018-05-06 21:15:50 回复(0)
public static void main(String[] args) {
        int intege = new Scanner(System.in).nextInt();
        System.out.println("octo:"+Integer.toHexString(intege));
        System.out.println("hex:"+Integer.toOctalString(intege));
    }
// Integer.toBinaryString(int i)//返回的是i的二进制表示,返回类型为String
// Integer.toString(int i,int radix)//返回的是i的二进制表示,返回类型为String,但是负数不适用。
// Integer.toHexString(int i)//返回16进制
// Integer.toOctalString(int i)//返回8进制
// Integer.parseInt(String s,int radix)//radix进制的s,转化为十进制,返回类型为int
// Integer.valueOf(String s,int radix)//同上
作者:ChineseBoy
链接:https://www.jianshu.com/p/65053a46719e
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

看了下由String转成Integer的时候由于Integer的位数限制会报错,
所以建议由Integer的大进制的数转为String表示的小进制;

  * @param   i       an integer to be converted to a string.
     * @param   radix   the radix to use in the string representation.
     * @return  a string representation of the argument in the specified radix.
     * @see     java.lang.Character#MAX_RADIX
     * @see     java.lang.Character#MIN_RADIX
     */
    public static String toString(int i, int radix) {


编辑于 2018-08-30 22:57:41 回复(0)