蓝桥等考C++组别十八级
第一部分:选择题
1、
C++ L18 (
15
分)
以下可以正确
输出字符“A”的是( )。
A
.
printf("%c", 'A');
B.
printf("%d", 'A');
C.
printf("%e", 'A');
D.
printf("%f", 'A');
正确答案:A
2
、C++ L18 (
15
分)
执行下面的代码,输出的是( )。
int a = 123, b = 4567890;
printf("%5d%5d", a, b);
A
.
12345678
(注:前面有
2
个空格)
B. 123 45678
(注:两数中间有
2
个空格)
C
.
123 4567890
(注:两数中间有
2
个空格)
D.
1234567890
(注:前面有
2
个空格)
正确答案:
D
3
、C++ L18 (20分)
假设已定义:
string s;
要
求
从键盘中输入“
I love C++
”并正确保存到字符串s中,以下代码正确的是( )。
A
. cin.getline(s, 50);
B. fgets(s, 50, stdin);
C. scanf("%s", s);
D. getline(cin, s);
正确答案:D
第二部分:编程题
4、
C++ L18
三角形
数列
(
5
0分)
题目名称:
三角形数列
题目描述:
给定正整数n,按如图方式构成一个n行的三角形数列:从上往下,第一行依次为1,2,3,
……
n,从第二行开始,每行都比上一行少一个数,且每行的每个数都是其左上方和右上方两个数之和,并且在这两个数正中间位置的正下方。
例如:n=6时,三角形数列如下图所示:
1 2 3 4 5 6
3 5 7 9 11
8 12 16 20
20 28 36
48 64
112
给定一个正整数n,输出题目要求的三角形数列。
输入:
一个正整数n(
2
<
=
n
<= 20
)。
输出:
有n行,为题目要求的三角形数列;
每个数的显示占用
8
个字符宽度,且向左对齐,同一行中两个相邻的数之间没有额外的空格。
输入样例
1
:
6
输出样例
1
:
1 2 3 4 5 6
3 5 7 9 11
8 12 16 20
20 28 36
48 64
112
参考程序:
、
测试数据:
1.in
2
1.out
1 2
3
2.in
6
2.out
1 2 3 4 5 6
3 5 7 9 11
8 12 16 20
20 28 36
48 64
112
3.in
9
3.out
1 2 3 4 5 6 7 8 9
3 5 7 9 11 13 15 17
8 12 16 20 24 28 32
20 28 36 44 52 60
48 64 80 96 112
112 144 176 208
256 320 384
576 704
1280
余下见附件目录下
testcase
.txt
蓝桥杯青少组C++组别18级编程练习真题(第5套,共8套)