C语言 您所在的位置:网站首页 c语言实现字符转换为16进制字符 C语言

C语言

2024-07-01 16:55| 来源: 网络整理| 查看: 265

Description  

输入一个二进制的数,要求输出该二进制数的十六进制表示。在十六进制的表示中,A~F表示10~15。

Input  

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

Output  

 n行,每行输出对应于一个输入,表示该二进制数转化成十六进制数的结果。

Sample Input  

2 100000 111

Sample Output  

20 7

#include #include int main(){ int N,n,k,t,i,j,m; char a[10005]; int b[10005]={0}; scanf("%d",&N); while(N--){ scanf("%s",&a); n=strlen(a); for(i=0;i=0;i--){ b[k]+=(a[i]-'0')*t; t*=2; m++; if(m%4==0){ k++; t=1; } } for(i=0;i=10){ switch(b[i]){ case 10 : b[i]='A'; break; case 11 : b[i]='B'; break; case 12 : b[i]='C'; break; case 13 : b[i]='D'; break; case 14 : b[i]='E'; break; case 15 : b[i]='F'; break; } } } for(i=k;i>=0;i--){ if(b[i]!=0){ for(j=i;j>=0;j--){ if(b[j]>=65 && b[j]


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有