Lithium做进制转换
来源:互联网 发布:淘宝如何找到卖家电话 编辑:程序博客网 时间:2024/06/16 20:14
- Description
最近Lithium时常感到头疼,因为考试的日子就快要到了。为了准备考试,Lithium正在没日没夜地看书,但凡是和计算机科学有关的书籍都有一个特点——书里总是会用二、十和十六三种进制中的某一种来表示一个数,有时甚至还需要读者将一个数在这三种进制中进行转换。
满眼纷乱的二、十、十六进制数令Lithium的头痛又加剧了。为了更有效率的进行复习,也为了让自己的头更好受一些。Lithium需要编一个程序来替他解决进制转换的问题。
- Input
输入的第一行是一个正整数N。之后2~N+1行每行有一个非负整数num(0<=num<=1000),num后紧跟一个进制标识符,二进制为‘B’,十进制为‘D’,十六进制为‘H’,其中十进制数的标识符可以缺省表示。
- Output
对于每个输入的数,先输出一行“Case #:”,其中‘#’为这一组输出的序号,在之后的三行里分别输出num的二、十、十六进制表示形式并加上进制标识符。每组答案之后额外输出一个空行。
- Sample Input
4
1B
1D
1
1H
- Sample Output
Case 1:
1B
1D
1H
Case 2:
1B
1D
1H
Case 3:
1B
1D
1H
Case 4:
1B
1D
1H
#include<iostream>#include<string>using namespace std;int main(){ //freopen("in.txt","r",stdin); int n,k,i,len,j,sum,tmp,t,x; char s[12];int s1[12]; scanf("%d",&n); getchar(); for(k=1;k<=n;k++) { sum=0; printf("Case %d:\n",k); gets(s); len=strlen(s); if(s[len-1]=='B') for(i=0;i<len-1;i++) sum=sum*2+s[i]-'0'; if(s[len-1]=='D') for(i=0;i<len-1;i++) sum=sum*10+s[i]-'0'; if(s[len-1]>='0'&&s[len-1]<='9') for(i=0;i<len;i++) sum=sum*10+s[i]-'0'; if(s[len-1]=='H') for(i=0;i<len-1;i++) if(s[i]>='0'&&s[i]<='9') sum=sum*16+s[i]-'0'; else sum=sum*16+s[i]-55; t=sum;x=0; if(t==0)s1[x++]=0; while(t) { s1[x++]=t%2; t/=2; } for(j=x-1;j>=0;j--) printf("%d",s1[j]); printf("B\n"); t=sum;x=0; if(t==0)s1[x++]=0; while(t) { s1[x++]=t%10; t/=10; } for(j=x-1;j>=0;j--) printf("%d",s1[j]); printf("D\n"); t=sum;x=0; if(t==0)s1[x++]=0; while(t) { s1[x++]=t%16; t/=16; } for(j=x-1;j>=0;j--) if(s1[j]<10) printf("%d",s1[j]); else printf("%c",s1[j]+55); printf("H\n\n"); } return 0;}
0 0
- Lithium做进制转换
- lithium的LED显示法
- 千呼万唤始出来,OpenDaylight Lithium版本发布
- opendaylight Lithium编译和代码导入eclipse
- 南邮 OJ 1616 lithium的包裹
- 手机锂电池(lithium-ion battery)
- OpenDaylight Lithium 在ubunbtu下的安装
- Codility上的问题(28) Lithium 2013
- 南邮 OJ 1507 Lithium去自习1:打伞
- 南邮 OJ 1508 Lithium去自习2:赶时间
- (Tutorial) [Linux VPS] Making a Lithium-Based v111 + MapleStory Server on a Linux VPS
- 转换
- 转换
- 转换
- 转换
- 转换
- 转换
- 转换
- Android搭建本地服务
- ElasticSearch
- Swagger+Spring MVC框架学习分享
- 安卓开发笔记——关于图片的三级缓存策略(内存LruCache+磁盘DiskLruCache+网络Volley)
- 移动应用设计原则
- Lithium做进制转换
- thread
- jQuery操作得到DOM元素
- C语言的枚举及指针
- GRE写作必备句型
- oracle建表带 表注释,字段注释的写法
- 查看网络图片
- 再谈javascript面向对象编程
- Python: Convert UTC time-tuple to UTC timestamp