CSU 1160(进制问题)
2015-07-17 21:11
351 查看
CSU 1160
Time Limit:1000MS Memory Limit:131072KB 64bit IO Format:%lld & %lluDescription
把十进制整数转换为十六进制,格式为0x开头,10~15由大写字母A~F表示。
Input
每行一个整数x,0<= x <= 2^31。
Output
每行输出对应的八位十六进制整数,包括前导0。
Sample Input
0 1023
Sample Output
0x00000000 0x000003FF 此题很巧妙,有多种解法,下面是我在比赛时所写:
#include<stdio.h> int main() { int a,b,i; char hex[8]; while(scanf("%d",&a)!=EOF) { for(i=0;i<8;i++) hex[i]='0'; i=0; while(a>=16) { b=a%16; if(b<10) hex[i]=b+'0'; else hex[i]=b-10+'A'; a/=16; i++; } if(a<10) hex[i]=a+'0'; else hex[i]=a-10+'A'; printf("0x"); for(i=7;i>=0;i--) printf("%c",hex[i]); printf("\n"); } return 0; } 但是其实还有更简单的格式输出
#include<stdio.h>
int main()
{
int x;
while(scanf("%d",&x)!=EOF)
{
printf("0x%.8X\n",x);
}
return 0;
}
看完之后是不是想吐血,哈哈。
相关文章推荐
- 阿里电话面试总结
- isalnum
- Android IOS WebRTC 音视频开发总结(三五)-- chatroulette介绍
- 每天一个Linux命令-5(tail)
- 我以前从来不会多想
- poj 2828 Buy Tickets(线段树)
- 线程安全函数是什么
- POJ 2923 状压好题
- CSU 1160 A(Contest #3)
- 每天一个linux命令(4):mkdir命令
- hdu1003(水dp)
- ASP.NET 3.5 MVC框架深度解析
- OC基础--@property修饰符
- ArcGIS中各种合并要素(Union、Merge、Append、Dissolve)的异同点分析 转载
- (简单) POJ 2492 A Bug's Life,二分染色。
- 【RQNOJ356】myt的格斗
- 小晴天老师系列——可恶的墨水瓶(floodfill)
- javaweb新建helloworld项目
- Java_LIST使用方法和四种遍历arrayList方法
- 简单的内存法操作BMP图像函数