二进制转化为十六进制

时间限制: 3 Sec  内存限制: 64 MB
提交: 433  解决: 45
[提交][状态][讨论版]

题目描述

输入一个2进制的数,要求输出该2进制数的16进制表示。 在16进制的表示中,A-F表示10-15

输入

第1行是测试数据的组数n,后面跟着n行输入。每组测试数据占1行,包括一个以0和1组成的字符串,字符串长度至少是1,至多是10000

输出

n行,每行输出对应一个输入。 输出没有前导的0。

样例输入

2100000111

样例输出

207

提示

来源

百练2798,测试数据 by 09游戏张文君

这题的实现不难,只是要注意一下变态的数据,输入00000时应该输出0,要是漏了这步就会变为00就会Wa。

二进制化十六进制直接拿二进制的四位就是十六进制的一位。

AC代码:

#include <iostream>
#include <cstring>
using namespace std;
const int t=20000000;
char a[t],b[t];
int val(int j)
{int sum=0,k=j-4;if(j-4<0)k=0;//相当于不够四位的补位操作for (int i=k;i<j;i++) //二进制四位转十进制的数{ if (a[i]=='0') { sum*=2; }  else{ sum=sum*2+a[i]-'0'; } } return sum;
}
int main()
{ int n=2,tt,m=15,i,j,len,f; cin >> f;cin.get();while(f--){cin.getline(a,t);len=strlen(a);j=0;while(len>=4){tt=val(len);if(tt>=0&&tt<=9)//转十六进制b[j++]=tt+'0';elseb[j++]=tt+55;len-=4;}if(len)//还有小于四位的二进制数b[j++]=val(len)+'0';len=j-1;while(b[len]=='0'&&len>0)//排除多个0的情况{len--;}for(i=len;i>=0;--i){cout << b[i];}cout << endl;}return 0;
} 

二进制转化为十六进制相关推荐

  1. 1155: 5202 二进制转化为十六进制

    题目描述 输入一个2进制的数,要求输出该2进制数的16进制表示.在16进制的表示中,A-F表示10-15. 输入 第1行是测试数据的组数n,后面跟着n行输入.每组测试数据占1行,包括一个以0和1组成的 ...

  2. python中二进制转化为十进制_将二进制、八进制、十六进制转换为十进制

    学习视频 9节课征服「字符编码」-1-字符.字符集.字符编号与字符编码(基础课)-周华健的在线视频教程​edu.csdn.net 二进制.八进制和十六进制向十进制转换都非常容易,就是"按权相 ...

  3. VB 二进制数组与十六进制字符串相互转换

    1.VB 二进制Byte()数组转换成十六进制字符串函数: Private Function BytesToHex(bytB() As Byte) As String Dim strTmp As St ...

  4. 十进制与二进制转化计算

    十进制与二进制转化计算 学计算机的朋友刚开始学习时都要接触进制之间的转换,二进制.十进制.八进制.十六进制等,这个是很枯燥的,转来转去就转蒙圈了,别蒙别蒙,今天咱们一个一个搞定,看看二进制和十进制之间 ...

  5. python--整型和二进制转化

    整型转二进制 采用自带函数bin获取 temp = bin(16) print(temp) # 输出:0b10000 用format取出二进制格式 temp = format(16, "b& ...

  6. 数字转化为十六进制 按位操作(详解)

    力扣习题405:数字转化为十六进制数 (转化8进制,算法类似) 这道题在力扣里面归属于位运算,位运算一般来讲,速度比较快,效率高.在解决本题时,个人作为初学者最先想到的是直接用除法.求余去解决,但是这 ...

  7. 二进制除法移位相减_二进制转化、、、移位运算

    参考资料: https://www.cnblogs.com/wxb20/p/6033458.html https://www.cnblogs.com/joahyau/p/6420619.html ht ...

  8. 十进制转化为十六进制分割高低位

    2019独角兽企业重金招聘Python工程师标准>>> 将十进制1000,转化为十六进制,则为0x03E8,如果得到高低位,high=0x03,low=0xE8 BYTE high; ...

  9. java代码二进制转为十六进制_Java 中二进制转换成十六进制的两种实现方法

    Java 中二进制转换成十六进制的两种实现方法 每个字节转成16进制,方法1 /** * 每个字节转成16进制,方法1 * * @param result */ private static Stri ...

  10. 【Java文件操作】一个将文件转化为十六进制字节数组的工具(可以以8086汇编查看内存的格式输出,很优雅)

    将文件转化为字节数组 写了一个方法,直接用即可 /*** 将文件转化成字节数组** @param 要转换的文件路径* @return 转换成的字节数组* @throws IOException*/pu ...

最新文章

  1. bootstrap模态框显示控制
  2. SMB文件共享及用户权限使用配置
  3. 关于mount在unix系统上
  4. Seize Operation Master
  5. 素数对猜想之python3实现
  6. java课设电子门禁_中控门禁pullSdk Java demo 中控智慧门禁系统 - 下载 - 搜珍网
  7. vue报错getVueAllUser:67 Uncaught TypeError: Cannot read property 'userId' of undefined
  8. 使用 redis 减少 秒杀库存 超卖思路 (转)
  9. macOS Monterey新功能:抹掉所有内容和设置
  10. QCSPCChart SPC控制图工具软件是面向对象的工具包
  11. 腾讯app看视频看不了显示服务器没有返回,腾讯视频TV版暂停服务怎么办?教你方法!...
  12. vue读取本地xlsx文件
  13. iphone7 无法连接计算机看照片,教你iphone7一键导出照片至电脑方法及iPhone7连接电脑itunes没反应怎么办...
  14. robotframework 内置库DateTime,Dialogs,
  15. Python爬取必应图片2
  16. 如何保持积极的心态?
  17. 最近用了一个免费的服务器
  18. 学习笔记--浅谈LoRa与LoRaWAN
  19. 明解C语言入门篇_第4章_程序的循环控制
  20. oj1075分析和代码

热门文章

  1. Android中调用文件管理器进行选择文件(记录)
  2. 软件测试是不是IT行业最容易学的 ,大概需要多长时间,就业前景好吗?
  3. 免费的文档翻译教程;免费将很长的文档英文翻译成中文
  4. psvimg格式PSV存档文件解包工具psvimgtools在macOS环境下的使用教程
  5. 腾讯前辈熬夜肝了一个月整理的《Linux内核学习笔记》,啃完受益匪浅不走弯路
  6. android极光推送设置消息类型,详解极光推送的 4 种消息形式—— Android 篇
  7. python中正方形内切园_python画出三角形外接圆和内切圆的方法
  8. Python骚操作,生成WiFi二维码,扫描一键联网
  9. 学习笔记:EPS高级功能1-车道保持辅助LKA(Lane Keeping Assist)
  10. ka电器表示什么意思_电气原理中,QS、FU、KM、KA、KI、KT、SB、SQ分别是什么电器元件的文字符号?...