2026年3月电子学会青少年软件编程(C/C++二级)等级考试试卷
剩余时间 --:--:--
单选题 共 10 题
1.

以下代码的输出是?( )

int a = 7;
int b = 3;
if (a % b == 0)
    cout << "Divisible";
else
    cout << "Not divisible";
2.

以下代码的输出是?( )

for (int i=3; i>0; i--) {
    cout << i << " ";
}
3.

以下代码的输出是?( )

int a[3] = {10, 20, 30};
cout << a[2-1];
4.

以下代码的输出是?( )

int y = 2;
switch (y) {
case 1: cout << "1";
case 2: cout << "2";
case 3: cout << "3"; break;
default: cout << "4";
}
5.

以下代码的输出是?( )

int i = 10;
while (i > 0) {
    if ( i == 5)
        break;
    cout << i << " ";
    i--;
}
6.

以下代码的输出是?( )

for (int i = 1; i <= 2; i++) {
    for (int j = 1; j <= 3; j++) {
        cout << i << "," << j << " "; 
    }
    cout << endl; 
}
7.

以下定义数组的方式【不正确】的是?( )

8.

以下代码的输出是?( )

int x[4]= {5, 10, 15, 20};
for (int i = 3; i >= 0; i--)
    cout << x[i] << " ";
9.

以下代码的输出是?( )

int a = 10;
int b = 5;
int c = 15;
if(a>=b && a>=c)
    cout << "A is largest";
else if (b >= c)
    cout << "B is largest";
else
    cout << "C is largest";
10.

do-while 循环至少执行几次?( )

判断题 共 10 题
1.

do-while 循环的条件表达式外不需要圆括号。( )

2.

while 循环的循环体至少执行一次。( )

3.

for 循环的步进表达式可以不赋值。( )

4.

for 循环的初始化部分可以不定义新变量。( )

5.

if 语句必须要有 else 语句。( )

6.

当条件表达式为假时,程序会进入对应的 while 循环。( )

7.

switch 语句的条件表达式可以是浮点型。( )

8.

数组名可以是关键字。( )

9.

小写字母的ASCII码比大写字母的大。( )

10.

在嵌套循环中,break 可以跳出多层循环。( )

编程题 共 2 题
1.

计算天数

题目描述

以 年-月-日 的形式给定一个日期,计算给定的日期是当年第几天。注意闰年二月有 29 天。

输入

输入格式为 yyyy-mm-dd,其中:

yyyy 表示给定的年份,mm 表示给定的月份,dd 表示给定的日期。

如果这些数字不足四位或二位,以 0 补足。

输出

单个整数:表示输入的日期是当年的第几天。

数据范围

保证月份与日期都是合理的。

输入样例1

2021-12-31

输出样例1

365

输入样例2

2022-01-01

输出样例2

1
2.

闯关得分

题目描述

每一名选手有三次挑战机会,每次挑战会获得一个得分。最终得分规则为:取三次挑战中得分最高的两次,将这两次的得分相加,作为该选手的最终得分。

现给定该选手三次挑战的得分,请计算并输出其最终得分。

输入

一行包含三个整数,分别表示三次挑战的得分,整数之间用空格分隔。

输出

一个整数,表示选手的最终得分。

数据范围

每次挑战的得分均为 0 到 100 之间的整数(包含 0 和 100)。

输入样例1

80 90 70

输出样例1

170

输入样例2

100 50 100

输出样例2

200
C++ 编辑器
输入
输出