蓝桥等考C++组别
十
级
第一部分:选择题
1
、C++ L
10
(
15
分)
已定义
int a[10] = {1, 3, 5, 7, 9, 11};
访问元素1
1
的正确方法是( )
。
A
.
a
[10]
B.
a[-1]
C.
a[6]
D.
a[5]
正确答案:D
2
、C++ L
10
(
15
分)
关于一维数组的初始化,假定在主函数里面有语句:
int d[6] = {1, 2 * 2, 3 * 3};
以下选项正确的是( )。
A
.
数组d的
6
个元素初始值为
1
,2,
2
,
3
,
3
,
3
。
B.
数组
d的
6
个元素初始值为
1
,
4
,
9
,
0
,
0
,
0
。
C.
数组
d的
6
个元素初始值为
1
,
4
,
4
,
9
,9,9。
D.
数组
d的
前
3
个元素初始值为
1
,
4
,
9
,后
3
个元素为随机值。
正确答案:B
3
、C++ L
10
(20分)
假定有数组int
a
[10]
,要在一行中输出所有的偶数元素,下列选项中正确的方法是( )
。
A
.
for (int i = 0; i <= 10; i++)
{
if (a[i] % 2 == 0)
cout << a[i] << ' ';
}
B.
for (int i = 0; i < 10; i++)
{
if (a[i] % 2 == 0)
cout << a[i] << ' ';
}
C.
for (int i = 1; i < 10; i++)
{
if (a[i] % 2 == 0)
cout << a[i] << ' ';
}
D.
for (int i = 1; i <= 10; i++)
{
if (a[i] % 2 == 0)
cout << a[i] << ' ';
}
正确答案:B
第二部分:编程题
4、
C++ L10
最终得分(
5
0分)
题目名称:
最终得分
题目描述:
一场歌唱比赛,有n个评委对一位选手进行评分。为了公平起见,要去掉一个最高分和一个最低分,然后求出剩余评分的平均分(向下取整),记为选手的最终得分。
输入:
输入有
2
行,第1行是
1
个正整数
n(
3
<
=
n
<= 30
)
,表示
评委的人数。
第2行包含n个
正整
数(不大于
100
),表示评委对选手的评分,两数之间用空格分隔。
输出:
一个正整数,表示选手的最终得分。
输入样例:
10
95 96 90 88 100 81 97 94 95 96
输出样例:
93
参考程序:
#include<iostream>
using namespace std;
const int N = 30;
int a[N+1];
int main()
{
int n, maxn = 1, minn = 1;
cin >> n >> a[1];
int sum = a[1];
for (int i = 2; i <= n; i++)
{
cin >> a[i];
sum += a[i];
if (a[maxn] < a[i])
maxn = i;
if (a[minn] > a[i])
minn = i;
}
sum -= a[maxn];
sum -= a[minn];
cout << sum / (n - 2);
return 0;
}
测试数据:
1.in
6
2 1 4 5 1 3
1.out
2
2.in
10
2 3 1 4 5 1 9 1 2 8
2.out
3
3.in
10
95 96 90 88 100 81 97 94 95 96
3.out
93
4.in
14
81 90 92 86 85 88 90 82 83 95 94 93 81 93
4.out
88
5.in
30
90 92 92 80 98 80 85 87 84 96 93 91 85 82 86 93 89 85 84 82 90 99 89 85 81 84 100 87 84 94
5.out
88
蓝桥杯青少组C++组别10级编程练习真题(第5套,共10套)