蛋蛋的问题(二)
时间限制:100 ms | 内存限制:65535 KB
难度:2
-
描述
-
教新生的时候,也是学长们最兴奋的时候,但是只局限于讲课的那位帅帅的学长,在最后一排坐着听课的学长确实无比的苦闷啊,为了让小学弟知道,你们的二进制转换学的很烂,学长为你们创造了这道很难的题,没看错,是很难。。。
二进制的转换很简单,下面是搜搜里面的介绍:
这个题可不是求二进制这么简单的,说过了,是很难的。。
下面说问题:对于给出的N个数,求出他们的8进制数或者16进制数,每组数据最前面有标示符,是‘X’,那么就要转换成16进制的书,如果是‘0’,呢么就要转换成8进制,是不是很难啊,还有更难得:注意(输出长度规定为4),可别输错了欧。。。。
-
输入
- 有多组数据。
每组数据第一个是一个字符,'0'或者'X',然后是一个整数N(0<N<=100),接下来是N个整数,每个整数都为小于100的非负整数。
输出 - 对应每组输入,输出所要求的数据,输出数据为单独一行 样例输入
-
0 5 2 3 4 5 6 X 5 2 3 4 5 6 0 2 99 98 X 2 99 98 X 2 10 11
样例输出 -
2 3 4 5 6 2 3 4 5 6 143 142 63 62 A B
- 有多组数据。
#include<stdio.h>
int main()
{
char fh;
int number;
while(scanf("%c %d",&fh,&number)!=EOF)
{
int temp;
if(fh=='0')
{
for(int i=0;i<number;i++)
{
scanf("%d",&temp);
printf("%4o",temp);
}
}
else
{
for(int i=0;i<number;i++)
{
scanf("%d",&temp);
printf("%4X",temp);
}
}
printf("\n");
getchar();
}
return 0;
}