蓝桥等考C++组别
十五
级
第一部分:选择题
1、
C++ L15 (
15
分)
将二进制数
01001110
转
换
成十进制,结果是( )。
A
. 76
B. 78
C. 80
D. 82
正确答案:B
2
、C++ L15 (
15
分)
将(
275
)
8
转换成二进制,结果是( )。
A
.
(
10101101
)
2
B.
(
10110101
)
2
C.
(
10111001
)
2
D.
(
10111101
)
2
正确答案:D
3
、C++ L15 (20分)
将(
126)
1
0
+
(1
1100101
)
2
的和转换成十六进制,结果是( )。
A
.
(
161
)
16
B.
(
162
)
16
C.
(
163
)
16
D.
(
164
)
16
正确答案:C
第二部分:编程题
4、
C++ L15
五
进制转换为十进制(
2
0分)
题目名称:
五
进制
转换为十进制
题目描述:
输入一个五进制正整数,将其转换成十进制数。
输入:
一个
五
进制正整数(位数不超过10位)
。
输出:
共
1
行,为一个正整数,表示将输入转换成十进制数的结果。
输入样例:
234
输出样例:
69
参考程序:
#include<iostream>
#include<cstring>
using namespace std;
const int N = 10;
char n5[N + 1];
int main()
{
int n = 0;
cin >> n5;
for (int i = 0; n5[i] != 0; i++)
{
n = n * 5 + n5[i] - '0';
}
cout << n;
return 0;
}
测试数据:
1.in
234
1.out
69
2.in
333
2.out
93
3.in
1320303134
3.out
3291044
4.in
1014300
4.out
16825
5.in
100204
5.out
3179
5、
C++ L15
十进制转换为十
五
进制(
3
0分)
题目名称:
十进制转换为十五进制
题目描述:
输入一个十进制正整数,将其转换成十五进制数。
十五进制数的数码有:0,1,2,3,
4
,
5
,6,7,8,9,A,
B
,
C
,
D
,
E
(A
~
E,分别表示1
0~14
)
输入:
1
行,为一个十进制正整数(不超过
1
00,000
)。
输出:
仅
1
行,为转换后的十五进制数。
注意:
1
0~14
的
十
五
进制数
用
大写字母
A
~E
表示。
输入样例:
432
输出样例:
1
DC
参考程序:
#include<iostream>
#include<cstring>
using namespace std;
const int N = 100;
char n15[N + 1];
int main()
{
int n, pos = 0;
cin >> n;
for (int i = n; i > 0; i /= 15)
{
int r = i % 15;
if (r > 9)
n15[pos] = r - 10 + 'A';
else
n15[pos] = r + '0';
pos++;
}
for (int i = pos - 1; i >= 0; i--)
{
cout << n15[i];
}
return 0;
}
测试数据:
1.in
432
1.out
1DC
2.in
9
2.out
9
3.in
80287
3.out
18BC7
4.in
57165
4.out
11E10
5.in
90667
5.out
1BCE7
蓝桥杯青少组C++组别15级编程练习真题(第6套,共6套)