九度OJ 1118 数制转换
题目地址:http://ac.jobdu.com/problem.php?pid=1118
- 题目描述:
-
求任意两个不同进制非负整数的转换(2进制~16进制),所给整数在long所能表达的范围之内。
不同进制的表示符号为(0,1,...,9,a,b,...,f)或者(0,1,...,9,A,B,...,F)。
- 输入:
-
输入只有一行,包含三个整数a,n,b。a表示其后的n 是a进制整数,b表示欲将a进制整数n转换成b进制整数。a,b是十进制整数,2 =< a,b <= 16。
数据可能存在包含前导零的情况。
- 输出:
-
可能有多组测试数据,对于每组数据,输出包含一行,该行有一个整数为转换后的b进制数。输出时字母符号全部用大写表示,即(0,1,...,9,A,B,...,F)。
- 样例输入:
-
15 Aab3 7
- 样例输出:
-
210306
- 提示:
-
可以用字符串表示不同进制的整数。
#include <stdio.h>
int main(void){
char str[100];
long long data;
long long tmp;
int a, b;
int i;
while (scanf ("%d %s %d", &a, str, &b) != EOF){
data = 0;
for (i=0; str[i]; ++i){
if (str[i] >= 'a')
str[i] -= 32;
tmp = (str[i] <= '9' && str[i] >= '0') ? str[i] - '0' : str[i] - 'A' + 10;
data = data * a + tmp;
}
if (data == 0){
puts ("0");
continue;
}
i = 0;
while (data != 0){
tmp = data % b;
str[i] = (tmp >= 10) ? tmp - 10 + 'A' : tmp + '0';
++i;
data /= b;
}
--i;
while (i >= 0){
putchar (str[i]);
--i;
}
putchar ('\n');
}
return 0;
}
九度OJ 1118 数制转换的更多相关文章
- 九度OJ 1118:数制转换 (进制转换)
时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:3873 解决:1494 题目描述: 求任意两个不同进制非负整数的转换(2进制-16进制),所给整数在long所能表达的范围之内. 不 ...
- 【九度OJ】题目1118:数制转换 解题报告
[九度OJ]题目1118:数制转换 解题报告 标签(空格分隔): 九度OJ 原题地址:http://ac.jobdu.com/problem.php?pid=1118 题目描述: 求任意两个不同进制非 ...
- 【九度OJ】题目1138:进制转换 解题报告
[九度OJ]题目1138:进制转换 解题报告 标签(空格分隔): 九度OJ 原题地址:http://ac.jobdu.com/problem.php?pid=1138 题目描述: 将一个长度最多为30 ...
- 【九度OJ】题目1080:进制转换 解题报告
[九度OJ]题目1080:进制转换 解题报告 标签(空格分隔): 九度OJ 原题地址:http://ac.jobdu.com/problem.php?pid=1080 题目描述: 将M进制的数X转换为 ...
- 【九度OJ】题目1194:八进制 解题报告
[九度OJ]题目1194:八进制 解题报告 标签(空格分隔): 九度OJ 原题地址:http://ac.jobdu.com/problem.php?pid=1194 题目描述: 输入一个整数,将其转换 ...
- 【九度OJ】题目1473:二进制数 解题报告
[九度OJ]题目1473:二进制数 解题报告 标签(空格分隔): 九度OJ http://ac.jobdu.com/problem.php?pid=1473 题目描述: 大家都知道,数据在计算机里中存 ...
- 【九度OJ】题目1208:10进制 VS 2进制 解题报告
[九度OJ]题目1208:10进制 VS 2进制 解题报告 标签(空格分隔): 九度OJ 原题地址:http://ac.jobdu.com/problem.php?pid=1208 题目描述: 对于一 ...
- 九度oj 题目1087:约数的个数
题目链接:http://ac.jobdu.com/problem.php?pid=1087 题目描述: 输入n个整数,依次输出每个数的约数的个数 输入: 输入的第一行为N,即数组的个数(N<=1 ...
- 九度OJ 1502 最大值最小化(JAVA)
题目1502:最大值最小化(二分答案) 九度OJ Java import java.util.Scanner; public class Main { public static int max(in ...
随机推荐
- HDU 5464 ( Clarke and problem ) (dp)
dp[i][j] := 前i个数和为j的情况(mod p) dp[i][j] 分两种情况 1.不选取第i个数 -> dp[i][j] = dp[i-1][j] 2. 选取第i个数 -> ...
- 迷宫 (BFS)
<挑战程序设计> P34 第一次使用pair 1.头文件:<utility>2.成员:mypair.first, mypair.second3.运算符:<.>.&l ...
- 教程-Delphi各种退出break,continue, exit,abort, halt, runerror
delphi中表示跳出的有break,continue, exit,abort, halt, runerror.1.break 强制退出循环(只能放在循环中),用于从For语句,while语句或rep ...
- HDU - 5187 - zhx's contest (高速幂+高速乘)
zhx's contest Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) To ...
- dubbo资料
http://blog.csdn.net/morning99/article/details/40426781http://blog.csdn.net/ruishenh/article/details ...
- [React] React Fundamentals: transferPropsTo
the transferPropsTo method lets you easily push properties into your components to easily customize ...
- cocos2d-x jsb 防止触摸事件传递
在游戏中要实现消息弹窗,让用户点击确认,其他区域产生遮罩,阻挡下层的事件被点击到,这是个很常用的功能,在cocos2d-x中,可以通过为layer添加事件代理来实现: pDirector->ge ...
- Design Of A Modern Cache
http://highscalability.com/blog/2016/1/25/design-of-a-modern-cache.html MONDAY, JANUARY 25, 2016 AT ...
- 标准I/O库之二进制I/O
如果进行二进制I/O操作,那么我们更愿意一次读或写整个结构.因此,提供了下列两个函数以执行二进制I/O操作. #include <stdio.h> size_t fread( void * ...
- Calendar类的基本使用
import java.util.Calendar; public class CalendarDemo{ public static void main(String[] args) { Calen ...