列表

详情


BC17. 缩短二进制

描述

我们处理的整数通常用十进制表示,在计算机内存中是以二进制补码形式存储,但通常二进制表示的整数比较长,为了便于在程序设计过程中理解和处理数据,通常采用八进制和十六进制,缩短了二进制补码表示的整,但保持了二进制数的表达特点。请输出十进制整数1234对应的八进制和十六进制。

输入描述

输出描述

十进制整数1234对应的八进制和十六进制(字母大写),用空格分开,并且要求,在八进制前显示前导0,在十六进制数前显示前导0X

原站题解

C 解法, 执行用时: 1ms, 内存消耗: 168KB, 提交时间: 2021-12-16

#include<stdio.h>
int main()
{
    printf("%#o %#X", 1234, 1234);//使用修饰符“#”控制前导显示,是控制显示,不是#0或者#0X
    return 0;
}

C 解法, 执行用时: 1ms, 内存消耗: 172KB, 提交时间: 2022-01-22

#include <stdio.h>
int main(){
    printf("0%o 0X%X\n",1234,1234);
    //%o是打印八进制的字符号,同理%X是打印十六进制的
    //因为题目要求八进制前显示前导0,十六进制前导0X,所以在字符号前加上
    return 0;
}

C 解法, 执行用时: 1ms, 内存消耗: 172KB, 提交时间: 2021-12-11

#include<stdio.h>
int main()
{
    int a = 1234;//存入1234
    printf("%#o %#X",a,a);//在八进制前显示0 - %#o  十六进制 0X - %#X
    return 0;
}
//这是我的解题思路,特别希望大家给我指正
//各位大佬们,我只是一个新手,轻点喷

C 解法, 执行用时: 1ms, 内存消耗: 172KB, 提交时间: 2021-12-10

#include<stdio.h>
int main ()
{
   int a = 1234;
    printf("%#o %#X",a,a);
    
    
    
    return 0 ;
}

C 解法, 执行用时: 1ms, 内存消耗: 172KB, 提交时间: 2021-12-04

#include<stdio.h>
int main()
{
    printf("%#o %#X",1234,1234);
}

上一题