题目链接:
https://nuoyanli.com/contest/27/problem/E
题面:
题意:
输入一个T代表有T组输入,接着输入一个字符串代表16进制,将其转换为二进制输出。
思路:
这道题目就是一个白嫖的题目,16进制对应二进制总共16种情况,通过不断的if判断就可以成功AC这道题目了,话不多说,参考代码如下。
参考代码:
#include<stdio.h>
#include<string.h>
#include<math.h>
#include<stdlib.h>
int main()
{
int T;
scanf("%d",&T);
while(T--)
{
int len,i;
char a[100000];
scanf("%s",a);
len=strlen(a);
for(i=0; i<len; i++)
{
if(a[i]=='0')
{
printf("0000");
}
if(a[i]=='1')
{
printf("0001");
}
if(a[i]=='2')
{
printf("0010");
}
if(a[i]=='3')
{
printf("0011");
}
if(a[i]=='4')
{
printf("0100");
}
if(a[i]=='5')
{
printf("0101");
}
if(a[i]=='6')
{
printf("0110");
}
if(a[i]=='7')
{
printf("0111");
}
if(a[i]=='8')
{
printf("1000");
}
if(a[i]=='9')
{
printf("1001");
}
if(a[i]=='A')
{
printf("1010");
}
if(a[i]=='B')
{
printf("1011");
}
if(a[i]=='C')
{
printf("1100");
}
if(a[i]=='D')
{
printf("1101");
}
if(a[i]=='E')
{
printf("1110");
}
if(a[i]=='F')
{
printf("1111");
}
}
if(T!=0)
printf("\n");
}
return 0;
}