整型常量:
1.十进制 整型常量: 十进制常量没有 前缀。
2.八进制整型常量:八进制整型常量必须以0开头,即0作为八进制数的前缀。
3.十六进制整型常量:十六进制常量的前缀为0X或0x;
输出数据类型:
o ----------->以八进制形式输出无符号整型(不输出前缀0)
x X --------->以十六进制 形式输出无符号整型(不输出前缀0X)
e E---------->以指数形式输出单,双精度实数
g G --------->以%f或%e中较短的输出宽度输出单,双精度实数
输入 数据类型:
o ----------->输入八进制整数
x ----------->输十六进制整数
f或 e ----------->输入实型数(用小数形式或指数形式)
例题:
题目描述
给定n个十六进制正整数,输出它们对应的八进制数。
输入
输入的第一行为一个正整数n (1<=n<=10)。
接下来n行,每行一个由0~9、大写字母A~F组成的字符串,表示要转换的十六进制正整数,每个十六进制数长度不超过100000。输出
输出n行,每行为输入对应的八进制正整数。
【注意】
输入的十六进制数不会有前导0,比如012A。
输出的八进制数也不能有前导0。样例输入
2 39 123ABC样例输出
71 4435274提示
【提示】
先将十六进制数转换成某进制数,再由某进制数转换成八进制。
代码:
#include<stdio.h>
#include<string.h>
#include<iostream>
#include<algorithm>
using namespace std;
char a[1000010];
int main()
{
int t;
scanf("%d",&t);
while(t--)
{
int n;
scanf("%X",&n);
printf("%o\n",n);
}
return 0;
}
A+B Coming HDU - 1720
Many classmates said to me that A+B is must needs.
If you can’t AC this problem, you would invite me for night meal. ^_^Input
Input may contain multiple test cases. Each case contains A and B in one line.
A, B are hexadecimal number.
Input terminates by EOF.Output
Output A+B in decimal number in one line.
Sample Input
1 9 A B a bSample Output
10 21 21
题意:按十六 进制输入,按十进制输出。
代码:
#include<stdio.h>
#include<string.h>
#include<math.h>
#include<algorithm>
using namespace std;
typedef long long ll;
int main()
{
int a,b;
while(~scanf("%x%x",&a,&b))
{
printf("%d\n",a+b);
}
return 0;
}