试卷总分:100分


选择题 10题 40分

01 02 03 04 05 06 07 08 09 10


判断题 10题 20分

11 12 13 14 15 16 17 18 19 20


编程题 2题 40分

21 22

E1072 电子学会青少年软件编程等级考试-C++ -CIE-202609-C++二级-真题-考试

选择题 共10道

01

在C++里,ifstream的作用是?

4分
登录后查看选项
02

下列函数用来打开磁盘文件的是?

4分
登录后查看选项
03

执行下面代码,变量res的结果是?

int a = 7, b = 2;
double res = a / (double)b;
4分
登录后查看选项
04

执行代码,输入59,程序输出结果为?

int score;
cin >> score;
if(score >= 85) cout << "优秀";
else if(score >=70) cout << "合格";
else if(score >= 60) cout << "及格";
else cout << "不及格";
4分
登录后查看选项
05

运行以下代码,输出结果是?

int y = 18;
if(y > 16) {
	if(y % 3 != 0) cout << "A";
	else cout << "B";
} else {
	cout << "C";
}
4分
登录后查看选项
06

执行嵌套循环,ans语句一共运行多少次?

int ans=0;
for(int i=2; i<=4; i++)
	for(int j=3; j<=5; j++)
		ans++;
cout << ans;
4分
登录后查看选项
07

执行下面代码,变量sum的值是?

int sum = 0;
for(int i = 1; i <= 3; i++) {
	for(int j = 4; j >= i; j--) {
		sum++;
	}
}
4分
登录后查看选项
08

有定义 int num[6];,下列语句能够给数组下标为 0的元素赋值的是?

4分
登录后查看选项
09

执行下面代码,屏幕打印出来的内容是?

int a[5]= {1,3,5,7,9};
for(int i=1; i<=3; i++) {
	cout << a[i] <<" ";
}
4分
登录后查看选项
10

代码功能为求数组最小值,横线处应当填写?

int a[5]= {12,5,19,3,8};
int minval = a[0];
for(int i=1; i<5; i++) {
	_____________
}
cout << minval;
4分
登录后查看选项

判断题 共10道

11

文件流使用完毕之后,调用close()关闭文件可以释放占用的资源。

2分
登录后查看选项
12

文件打开失败时,文件流对象会自动报错并终止整个程序运行。

2分
登录后查看选项
13

整数除法运算后,再强制转换为double,仍然可能丢失小数结果。

2分
登录后查看选项
14

多分支结构中各个条件判断的先后顺序,不会影响最终运行结果。

2分
登录后查看选项
15

if语句中,else总是匹配距离它最近、还没有配对完成的if。

2分
登录后查看选项
16

内层循环全部执行一遍以后,外层循环变量的值才会发生改变。

2分
登录后查看选项
17

在内层循环执行break,可以直接终止最外层循环。

2分
登录后查看选项
18

int b[10];定义数组,最后一个元素下标为9。

2分
登录后查看选项
19

访问数组a[7],代表数组当中第7个元素。

2分
登录后查看选项
20

一维数组的所有元素,在内存中占用一段连续的存储空间。

2分
登录后查看选项

编程题 共2道

21

首尾配对

题目描述

给定一个长度为 n 的整数序列。

从两端向中间依次配对相加:第 1 个与第 n 个、第 2 个与第 n−1 个、第 3 个与第 n−2 个…… 依此类推。

若 n 为奇数,则最中间单独的元素不做加法,直接保留。

按配对顺序输出每次配对的和。

输入

第一行,单个整数 n。

第二行,n 个整数表示 a1,a2...an。

输出

一行,表示每次配对的和,以空格隔开。

数据范围

1≤n≤200000,-100000≤ai≤100000

输入样例1

5

3 1 4 5 2

输出样例1

5 6 4

输入样例2

6

1 2 3 4 5 6

输出样例2

7 7 7

20分

C0715
登录后作答
22

星号矩形

题目描述

输入一个正整数 n,输出 n 行 2*n+1 列的星号矩形。

星号矩形的第 1 行、第 1 列、最后 1 行、最后 1 列是 `*`,其余部分由 `-` 组成。

输入

一行,一个正整数 n。

输出

输出星号矩形。

数据范围

1≤n≤2000

输入样例1

3

输出样例1

*******

*-----*

*******

输入样例2

5

输出样例2

***********

*---------*

*---------*

*---------*

***********

20分

C0716
登录后作答